Details

Time bar (total: 18.8s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 10 to 7 computations (30% saved)

sample4.6s (24.7%)

Results
2.1s3966×body1024valid
2.0s2103×body2048valid
462.0ms1335×body512valid
132.0ms847×body256valid
7.0msbody4096valid
Bogosity

preprocess24.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

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

Compiled 11 to 8 computations (27.3% saved)

simplify61.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

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

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

Compiled 9 to 6 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.3b
(cos.f64 (+.f64 x eps))
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
3.3b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 20 to 6 computations (70% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite105.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

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

simplify67.0ms (0.4%)

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

Useful iterations: 3 (0.0ms)

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

eval75.0ms (0.4%)

Compiler

Compiled 3964 to 1199 computations (69.8% saved)

prune209.0ms (1.1%)

Pruning

43 alts after pruning (42 fresh and 1 done)

PrunedKeptTotal
New17742219
Fresh000
Picked011
Done000
Total17743220
Error
0.2b
Counts
220 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))
26.1b
(-.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
50.4b
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
40.6b
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
39.3b
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
39.1b
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))
39.1b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
40.3b
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
56.9b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x))
39.5b
(fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))
26.1b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
40.3b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
33.9b
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
26.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
39.1b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
39.3b
(-.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x))
31.6b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
39.2b
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
31.6b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
39.5b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 3) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
47.6b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
56.8b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
15.2b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
31.4b
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
49.3b
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
39.3b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
26.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
39.3b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
31.4b
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
39.2b
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
39.5b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
26.1b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
37.9b
(*.f64 (sin.f64 x) (neg.f64 eps))
39.1b
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
13.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
40.6b
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x))
26.2b
(-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x))
38.9b
(-.f64 (cos.f64 eps) (cos.f64 x))
39.1b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
33.7b
(-.f64 (fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
26.8b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
39.4b
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 1413 to 934 computations (33.9% saved)

localize90.0ms (0.5%)

Local error

Found 6 expressions with local error:

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

Compiled 88 to 34 computations (61.4% saved)

series24.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

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

rewrite153.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
675×fma-def_binary64
454×log-prod_binary64
298×fma-neg_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify82.0ms (0.4%)

Algorithm
egg-herbie
Rules
643×fma-neg_binary64
582×fma-def_binary64
505×neg-sub0_binary64
460×neg-mul-1_binary64
360×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
090986
1256974
2710847
32755825
45996822
Stop Event
node limit
Counts
264 → 234
Calls
Call 1
Inputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
Outputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/8) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))))
(fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/8) (sin.f64 x)))
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (sin.f64 x)))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(*.f64 (*.f64 1/2 eps) (sin.f64 x))
(*.f64 eps (*.f64 1/2 (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) 1/4)))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4))))
(*.f64 eps (+.f64 (*.f64 1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 eps 1/4))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 (*.f64 1/2 eps) (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4))))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (fma.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))))
(+.f64 (*.f64 eps (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4)))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4)))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))))
(+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6) (sin.f64 (*.f64 1/2 eps))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.8b
(+.f64 (cos.f64 eps) -1)
1.8b
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 10 to 6 computations (40% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite44.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
544×pow1_binary64
530×add-sqr-sqrt_binary64
505×add-log-exp_binary64
505×log1p-expm1-u_binary64
505×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify112.0ms (0.6%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
027118
163118
2135118
3430118
42002118
54400118
64780118
75286118
86276118
97260118
107699118
Stop Event
node limit
Counts
43 → 41
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)
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 (*.f64 eps eps) 1/24 -1/2)))
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/24 (pow.f64 eps 4))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 1/40320 (pow.f64 eps 8) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (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)

localize14.0ms (0.1%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.3b
(cos.f64 (+.f64 x eps))
1.8b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
0.1b
(exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
0.1b
(exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
1.8b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
3.3b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 37 to 8 computations (78.4% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite116.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
483×log-prod_binary64
468×fma-def_binary64
301×pow-prod-down_binary64
286×pow2_binary64
244×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify66.0ms (0.4%)

Algorithm
egg-herbie
Rules
683×fma-def_binary64
587×distribute-rgt-out_binary64
581×associate-*r*_binary64
546×associate-*l*_binary64
310×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0103906
1320883
21001820
35552803
Stop Event
node limit
Counts
242 → 231
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))))
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 3))) (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))))))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
1
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(fma.f64 (sin.f64 eps) (neg.f64 x) (+.f64 (cos.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 x (sin.f64 (neg.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)))
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 (cos.f64 eps) (+.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) -1))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1)))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 eps (neg.f64 (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x))))
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x))))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))))
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (neg.f64 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1)))))
(-.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1)))))
(*.f64 (+.f64 (*.f64 (sin.f64 eps) (neg.f64 x)) 1) (exp.f64 (+.f64 (cos.f64 eps) -1)))
(*.f64 (+.f64 (*.f64 x (sin.f64 (neg.f64 eps))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1)))
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2)))))
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 -1 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (+.f64 1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2))) (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))))))
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))))
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) (*.f64 x (sin.f64 eps)))))
(*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) 1) (*.f64 x (sin.f64 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 3))) (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))))))
(fma.f64 (fma.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))) (fma.f64 1/6 (sin.f64 eps) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1))) (+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 -1 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (+.f64 1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2))) (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1)))))))
(+.f64 (-.f64 (*.f64 (*.f64 x x) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))) (fma.f64 (-.f64 (fma.f64 (sin.f64 eps) 1/6 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))) (*.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1))) (exp.f64 (+.f64 (cos.f64 eps) -1))))
(+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) (*.f64 x (sin.f64 eps)))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (fma.f64 -1/6 (pow.f64 (sin.f64 eps) 3) (*.f64 (sin.f64 eps) (+.f64 (neg.f64 (fma.f64 (cos.f64 eps) -1/2 1/2)) 1/6)))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))))
(+.f64 (*.f64 (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))) (-.f64 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2)) x) (sin.f64 eps))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (fma.f64 -1/6 (pow.f64 (sin.f64 eps) 3) (*.f64 (sin.f64 eps) (-.f64 1/6 (fma.f64 (cos.f64 eps) -1/2 1/2))))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
1
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 1 (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 1 (*.f64 eps (sin.f64 x)))
(fma.f64 (sin.f64 x) (neg.f64 eps) 1)
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 1 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))))
(+.f64 1 (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x)))) (+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))
(+.f64 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) 1))
(+.f64 (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 (sin.f64 x) (fma.f64 1/2 (cos.f64 x) 1/6) (*.f64 -1/6 (pow.f64 (sin.f64 x) 3))) 1))
(+.f64 1 (fma.f64 (pow.f64 eps 3) (fma.f64 (sin.f64 x) (fma.f64 1/2 (cos.f64 x) 1/6) (*.f64 -1/6 (pow.f64 (sin.f64 x) 3))) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x)))))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))

localize30.0ms (0.2%)

Local error

Found 6 expressions with local error:

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

Compiled 63 to 26 computations (58.7% saved)

series10.0ms (0.1%)

Counts
3 → 52
Calls

18 calls:

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

rewrite137.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
720×fma-def_binary64
677×log-prod_binary64
419×fma-neg_binary64
254×pow1/3_binary64
253×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify97.0ms (0.5%)

Algorithm
egg-herbie
Rules
875×fma-neg_binary64
791×unswap-sqr_binary64
551×fma-def_binary64
298×distribute-rgt-neg-in_binary64
261×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079999
1244983
2701877
32768808
45067808
Stop Event
node limit
Counts
246 → 229
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (+.f64 1/2 (*.f64 -1/2 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))) (pow.f64 x 2))))
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (*.f64 eps (pow.f64 x 3))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))) (pow.f64 x 2)))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 eps x)
(+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3))))
(+.f64 (*.f64 1/120 (*.f64 eps (pow.f64 x 5))) (+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3)))))
(+.f64 (*.f64 1/120 (*.f64 eps (pow.f64 x 5))) (+.f64 (*.f64 eps x) (+.f64 (*.f64 -1/5040 (*.f64 eps (pow.f64 x 7))) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3))))))
(+.f64 1 (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 4))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 4))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 6)))))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 -1 (*.f64 eps x) (*.f64 -1/2 (*.f64 eps eps)))
(-.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 eps x))
(*.f64 eps (-.f64 (*.f64 -1/2 eps) x))
(*.f64 eps (fma.f64 -1/2 eps (neg.f64 x)))
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (+.f64 1/2 (*.f64 -1/2 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))) (pow.f64 x 2))))
(fma.f64 -1 (*.f64 eps x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 eps eps) 1))) (*.f64 x x))))
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 x (*.f64 x (+.f64 (*.f64 (*.f64 eps eps) 1/4) 0)))) (*.f64 eps x))
(fma.f64 x (*.f64 x (*.f64 (*.f64 eps eps) 1/4)) (*.f64 eps (-.f64 (*.f64 -1/2 eps) x)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 x (-.f64 (*.f64 x (*.f64 eps (*.f64 eps 1/4))) eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 x (-.f64 (*.f64 x (*.f64 (*.f64 eps eps) 1/4)) eps)))
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (*.f64 eps (pow.f64 x 3))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))) (pow.f64 x 2)))))
(fma.f64 -1 (*.f64 eps x) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/6 (*.f64 eps (pow.f64 x 3)) (*.f64 (+.f64 1/2 (*.f64 -1/2 (fma.f64 -1/2 (*.f64 eps eps) 1))) (*.f64 x x)))))
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (+.f64 (*.f64 (*.f64 eps eps) 1/4) 0) (*.f64 x x) (*.f64 1/6 (*.f64 eps (pow.f64 x 3))))) (*.f64 eps x))
(+.f64 (*.f64 eps (-.f64 (*.f64 -1/2 eps) x)) (*.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 eps eps) 1/4) (*.f64 x (*.f64 eps 1/6)))))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 x (-.f64 (*.f64 x (*.f64 eps (+.f64 (*.f64 1/6 x) (*.f64 eps 1/4)))) eps)))
(fma.f64 (*.f64 x x) (*.f64 eps (+.f64 (*.f64 1/6 x) (*.f64 eps 1/4))) (*.f64 eps (-.f64 (*.f64 -1/2 eps) x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (+.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)))
(*.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) eps)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)))
(*.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) eps)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 eps)) (sin.f64 x)))
(*.f64 eps x)
(+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3))))
(fma.f64 eps x (*.f64 (*.f64 eps (pow.f64 x 3)) -1/6))
(fma.f64 eps x (*.f64 eps (*.f64 (pow.f64 x 3) -1/6)))
(*.f64 eps (+.f64 x (*.f64 (pow.f64 x 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 eps (pow.f64 x 5))) (+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3)))))
(fma.f64 1/120 (*.f64 eps (pow.f64 x 5)) (fma.f64 eps x (*.f64 (*.f64 eps (pow.f64 x 3)) -1/6)))
(fma.f64 1/120 (*.f64 eps (pow.f64 x 5)) (fma.f64 eps x (*.f64 eps (*.f64 (pow.f64 x 3) -1/6))))
(fma.f64 eps x (*.f64 eps (+.f64 (*.f64 (pow.f64 x 3) -1/6) (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 eps (+.f64 (*.f64 (pow.f64 x 3) -1/6) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(+.f64 (*.f64 1/120 (*.f64 eps (pow.f64 x 5))) (+.f64 (*.f64 eps x) (+.f64 (*.f64 -1/5040 (*.f64 eps (pow.f64 x 7))) (*.f64 -1/6 (*.f64 eps (pow.f64 x 3))))))
(fma.f64 1/120 (*.f64 eps (pow.f64 x 5)) (fma.f64 eps x (fma.f64 -1/5040 (*.f64 eps (pow.f64 x 7)) (*.f64 (*.f64 eps (pow.f64 x 3)) -1/6))))
(fma.f64 1/120 (*.f64 eps (pow.f64 x 5)) (fma.f64 eps x (fma.f64 (*.f64 eps (pow.f64 x 3)) -1/6 (*.f64 -1/5040 (*.f64 eps (pow.f64 x 7))))))
(fma.f64 eps (*.f64 1/120 (pow.f64 x 5)) (fma.f64 eps (*.f64 (pow.f64 x 3) -1/6) (*.f64 eps (+.f64 x (*.f64 -1/5040 (pow.f64 x 7))))))
(*.f64 eps (+.f64 (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 (pow.f64 x 3) -1/6)) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(+.f64 1 (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 -1/2 (*.f64 eps eps) 1)
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1))
(fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 x x)) (fma.f64 -1/2 (*.f64 eps eps) 1))
(fma.f64 (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/4)) (*.f64 x x) (fma.f64 -1/2 (*.f64 eps eps) 1))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (fma.f64 -1/2 (*.f64 eps eps) 1))
(*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (fma.f64 -1/2 (*.f64 eps eps) 1))
(*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (fma.f64 -1/2 (*.f64 eps eps) 1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 4))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)))
(fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 x x)) (fma.f64 1/24 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (pow.f64 x 4)) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(fma.f64 (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/4)) (*.f64 x x) (fma.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 1/24) (pow.f64 x 4) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(fma.f64 (fma.f64 (*.f64 eps eps) 1/4 -1/2) (*.f64 x x) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (+.f64 (*.f64 (*.f64 -1/2 x) x) (+.f64 1 (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (+.f64 (*.f64 x (*.f64 x -1/2)) (+.f64 1 (*.f64 1/24 (pow.f64 x 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 4))) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))) (pow.f64 x 6)))))))
(fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 x x)) (fma.f64 1/24 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (pow.f64 x 4)) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 -1/720 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (pow.f64 x 6))))))
(fma.f64 (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/4)) (*.f64 x x) (fma.f64 1/24 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (pow.f64 x 4)) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (pow.f64 x 6)) 1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 x 6)) 1) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))))
(fma.f64 (fma.f64 (*.f64 eps eps) 1/4 -1/2) (*.f64 x x) (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (+.f64 (+.f64 1 (*.f64 1/24 (pow.f64 x 4))) (*.f64 -1/720 (pow.f64 x 6)))))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (+.f64 1 (*.f64 -1/2 (pow.f64 eps 2))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)))
(*.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) eps)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)))
(*.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) eps)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x))

localize21.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
2.3b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
0.2b
(*.f64 (sin.f64 x) (sin.f64 eps))
0.1b
(-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))
0.1b
(-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))
0.2b
(*.f64 (sin.f64 x) (sin.f64 eps))
2.3b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
Compiler

Compiled 54 to 11 computations (79.6% saved)

series14.0ms (0.1%)

Counts
3 → 56
Calls

18 calls:

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

rewrite92.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
552×log-prod_binary64
356×pow-prod-down_binary64
308×fma-def_binary64
302×pow2_binary64
209×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify74.0ms (0.4%)

Algorithm
egg-herbie
Rules
570×fma-def_binary64
452×associate-+l+_binary64
444×*-commutative_binary64
435×distribute-rgt-neg-in_binary64
380×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0931094
1274993
2781928
32712916
45973916
Stop Event
node limit
Counts
239 → 231
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 (sin.f64 eps) x)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))))
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
Outputs
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 eps (*.f64 (*.f64 eps (cos.f64 x)) -1/2)) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(-.f64 (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))) (*.f64 eps (sin.f64 x)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))
(-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (-.f64 (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))) (*.f64 eps (sin.f64 x))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/2)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(+.f64 -1 (cos.f64 eps))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1))
(+.f64 -1 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 x x))) 1))
(+.f64 -1 (+.f64 (cos.f64 eps) (-.f64 (*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 x x)))) 1))
(+.f64 -1 (+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x))))))
(+.f64 -1 (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x) (fma.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (cos.f64 eps))))
(+.f64 -1 (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (cos.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(*.f64 (sin.f64 eps) x)
(*.f64 x (sin.f64 eps))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps)))
(*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6)))
(*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 x))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps))))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 (sin.f64 eps) (+.f64 x (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 eps) (pow.f64 x 7)) (*.f64 x (sin.f64 eps)))))
(+.f64 (*.f64 (sin.f64 eps) (+.f64 x (*.f64 -1/5040 (pow.f64 x 7)))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/5040 (pow.f64 x 7) x) (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6)) (fma.f64 -1/5040 (pow.f64 x 7) x)))
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))
(fma.f64 eps (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))
(*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))
(*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)))
(fma.f64 eps (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))))
(*.f64 (sin.f64 x) (+.f64 eps (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5)))))
(*.f64 (sin.f64 x) (+.f64 eps (fma.f64 1/120 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(fma.f64 -1/5040 (*.f64 (sin.f64 x) (pow.f64 eps 7)) (fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/5040 (pow.f64 eps 7)) eps)))
(*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))) (fma.f64 -1/5040 (pow.f64 eps 7) eps)))
(*.f64 (sin.f64 x) (+.f64 (fma.f64 1/120 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) -1/6)) (fma.f64 -1/5040 (pow.f64 eps 7) eps)))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (*.f64 x (sin.f64 eps)))
(fma.f64 x (sin.f64 eps) 1)
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x))))
(+.f64 1 (fma.f64 x (sin.f64 eps) (*.f64 -1/2 (*.f64 x x))))
(fma.f64 x (sin.f64 eps) (fma.f64 x (*.f64 x -1/2) 1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))))
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x)))))
(+.f64 (fma.f64 x (sin.f64 eps) (*.f64 -1/2 (*.f64 x x))) (fma.f64 (*.f64 (sin.f64 eps) (pow.f64 x 3)) -1/6 1))
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 x)) (fma.f64 x (*.f64 x -1/2) 1))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(fma.f64 eps (sin.f64 x) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(fma.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)))
(+.f64 (cos.f64 x) (fma.f64 eps (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (fma.f64 1/120 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) -1/6)))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))

eval469.0ms (2.5%)

Compiler

Compiled 26144 to 10565 computations (59.6% saved)

prune312.0ms (1.7%)

Pruning

80 alts after pruning (78 fresh and 2 done)

PrunedKeptTotal
New1124611185
Fresh201737
Picked101
Done325
Total1148801228
Error
0.1b
Counts
1228 → 80
Alt Table
Click to see full alt table
StatusErrorProgram
46.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))
36.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
26.1b
(-.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
51.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
51.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
39.5b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
13.7b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
39.5b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
46.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
56.2b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
39.1b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
39.4b
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
40.3b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
55.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (exp.f64 (log.f64 eps)) 1/2))) -2)
26.3b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
33.9b
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
46.7b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
35.0b
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
39.7b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
39.3b
(-.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x))
33.8b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (neg.f64 (cos.f64 x)))))
33.7b
(-.f64 (fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
31.6b
(-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
33.2b
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
39.1b
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
26.2b
(log.f64 (exp.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
39.2b
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
39.5b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 3) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
36.7b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
15.2b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
31.6b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
26.1b
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
43.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
39.6b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2)
26.1b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
28.9b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2)
39.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 1))
39.1b
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
39.3b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
26.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
39.5b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
26.1b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
43.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 2) (neg.f64 (cos.f64 x)))))
57.2b
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x)))))
48.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
26.8b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
43.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2)
26.2b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x)))))
57.1b
(log.f64 1)
39.4b
(+.f64 (cos.f64 eps) -1)
52.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
33.9b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
31.4b
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))
45.7b
(*.f64 eps (fma.f64 -1/2 eps (neg.f64 x)))
39.0b
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))
13.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))) -2)
45.7b
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2)))
40.3b
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
33.2b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
39.5b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
40.6b
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x))
41.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (fma.f64 x x (*.f64 (+.f64 x eps) eps))) 1/2))) -2)
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
37.9b
(*.f64 (sin.f64 x) (neg.f64 eps))
51.1b
(*.f64 -1/2 (*.f64 eps eps))
26.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
42.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (*.f64 eps eps) eps) 1/2))) -2)
38.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (cos.f64 x)))
51.3b
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
31.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2)
51.0b
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
38.9b
(-.f64 (cos.f64 eps) (cos.f64 x))
43.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2)
39.1b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
39.5b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
Compiler

Compiled 2593 to 1889 computations (27.2% saved)

localize72.0ms (0.4%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))
0.2b
(*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
0.1b
(*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))
0.1b
(+.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))
0.2b
(*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
0.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))
3.2b
(sin.f64 (*.f64 (+.f64 x eps) 1/2))
3.4b
(cos.f64 (*.f64 (+.f64 x eps) 1/2))
Compiler

Compiled 171 to 97 computations (43.3% saved)

series31.0ms (0.2%)

Counts
4 → 96
Calls

24 calls:

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

rewrite163.0ms (0.9%)

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

Useful iterations: 1 (0.0ms)

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

simplify133.0ms (0.7%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
01582398
14932377
215792226
333802193
478632193
Stop Event
node limit
Counts
176 → 152
Calls
Call 1
Inputs
(cos.f64 (*.f64 1/2 eps))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 x))
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 x))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
Outputs
(cos.f64 (*.f64 1/2 eps))
(cos.f64 (*.f64 eps -1/2))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))
(fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (cos.f64 (*.f64 1/2 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (cos.f64 (*.f64 eps -1/2)))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (cos.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 eps -1/2))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) 1/48)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 x) (*.f64 1/48 (pow.f64 x 3)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/48 (pow.f64 x 3)) (*.f64 -1/2 x))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 eps -1/2))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 x))
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x)))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps)))))
(+.f64 (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps))))
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 eps eps))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))))))
(+.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 eps -1/2)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (+.f64 (*.f64 1/48 (*.f64 eps eps)) -1/2))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 eps -1/2))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 eps eps))) (cos.f64 (*.f64 1/2 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 eps -1/2)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 eps -1/2)) x)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/48))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/48))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 x))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 -1/8 (*.f64 eps eps)))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))))
(+.f64 (fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) -1/48)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (pow.f64 eps 3) -1/48) (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 -1/8 (*.f64 eps eps)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (pow.f64 eps 3) -1/48) (*.f64 1/2 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) (*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) -1/6)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(fma.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (*.f64 -1/48 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/96) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/96))) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) -1/6))))))
(fma.f64 (pow.f64 eps 4) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) -1/24) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))))
(+.f64 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))) (*.f64 (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 1/2 (*.f64 eps eps)) (*.f64 (pow.f64 eps 4) -1/24))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 eps -1/2)) x)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (fma.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 eps -1/2)) x) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))))
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 x x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) x) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 eps -1/2)) -1/6)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 eps -1/2)) x))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/4)))
(*.f64 x (+.f64 (*.f64 1/2 (cos.f64 (*.f64 1/2 eps))) (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/4))))
(*.f64 x (+.f64 (*.f64 1/2 (cos.f64 (*.f64 eps -1/2))) (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/4))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3)))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 1/48 (pow.f64 x 4)))))
(+.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 1/48 (pow.f64 x 4)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))
(fma.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(fma.f64 -1/8 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(fma.f64 -1/8 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (fma.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 eps -1/2)) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8))))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 eps eps))) (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))))
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (fma.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8))))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 eps (+.f64 (*.f64 1/48 (*.f64 eps eps)) -1/2))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 eps -1/2))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 eps eps))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))

localize5.0ms (0%)

Local error

Found 2 expressions with local error:

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

Compiled 12 to 6 computations (50% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite47.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
432×pow1_binary64
420×add-sqr-sqrt_binary64
411×*-un-lft-identity_binary64
401×add-log-exp_binary64
401×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11027
211487
Stop Event
node limit
Counts
1 → 14
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps))) (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 eps eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (sqrt.f64 -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 eps 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (*.f64 eps eps))))))))

simplify172.0ms (0.9%)

Algorithm
egg-herbie
Rules
1082×sqr-pow_binary64
617×cube-prod_binary64
554×fabs-mul_binary64
523×pow-sqr_binary64
441×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0684
11284
22384
34484
410584
533184
6125084
7212384
8228784
9247184
10267984
11297684
12337184
13385284
14441884
15510284
16593584
17632784
18661984
19689584
20696984
21700384
22794484
Stop Event
node limit
Counts
26 → 16
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))

localize40.0ms (0.2%)

Local error

Found 8 expressions with local error:

NewErrorProgram
32.6b
(*.f64 (*.f64 eps eps) (/.f64 1 eps))
5.2b
(sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))
0.2b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2)))
0.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2)
0.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2)
0.2b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2)))
5.2b
(sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))
32.6b
(*.f64 (*.f64 eps eps) (/.f64 1 eps))
Compiler

Compiled 102 to 51 computations (50% saved)

series7.0ms (0%)

Counts
4 → 72
Calls

18 calls:

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

rewrite76.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
589×log-prod_binary64
485×fma-def_binary64
279×fma-neg_binary64
221×expm1-udef_binary64
221×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify165.0ms (0.9%)

Algorithm
egg-herbie
Rules
1008×fma-def_binary64
624×sqr-pow_binary64
506×distribute-rgt-out_binary64
497×*-commutative_binary64
464×associate-+l+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060678
1148678
2354678
31145678
43056678
53982678
64810678
75171678
85520678
95853678
106340678
116937678
127584678
Stop Event
node limit
Counts
243 → 201
Calls
Call 1
Inputs
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
(*.f64 1/2 eps)
(+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (+.f64 (*.f64 -1/645120 (pow.f64 eps 7)) (*.f64 1/2 eps))))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 1/2 eps))
(*.f64 1/4 (pow.f64 eps 2))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (*.f64 -1/48 (pow.f64 eps 4)))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 1/1440 (pow.f64 eps 6))))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (+.f64 (*.f64 -1/80640 (pow.f64 eps 8)) (*.f64 1/1440 (pow.f64 eps 6)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(*.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 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
Outputs
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
(*.f64 1/2 eps)
(*.f64 eps 1/2)
(+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))
(fma.f64 -1/48 (pow.f64 eps 3) (*.f64 eps 1/2))
(fma.f64 eps 1/2 (*.f64 -1/48 (pow.f64 eps 3)))
(*.f64 eps (fma.f64 eps (*.f64 eps -1/48) 1/2))
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 eps 1/2)))
(fma.f64 eps 1/2 (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/48 (pow.f64 eps 3))))
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (+.f64 (*.f64 -1/645120 (pow.f64 eps 7)) (*.f64 1/2 eps))))
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 -1/645120 (pow.f64 eps 7) (*.f64 eps 1/2))))
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 eps 1/2 (*.f64 -1/645120 (pow.f64 eps 7)))))
(fma.f64 eps 1/2 (fma.f64 -1/645120 (pow.f64 eps 7) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/48 (pow.f64 eps 3)))))
(fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 -1/645120 (pow.f64 eps 7) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 eps 1/2))))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(sin.f64 (*.f64 1/2 eps))
(sin.f64 (*.f64 eps 1/2))
(*.f64 1/4 (pow.f64 eps 2))
(*.f64 1/4 (*.f64 eps eps))
(*.f64 eps (*.f64 eps 1/4))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (*.f64 -1/48 (pow.f64 eps 4)))
(fma.f64 1/4 (*.f64 eps eps) (*.f64 -1/48 (pow.f64 eps 4)))
(fma.f64 -1/48 (pow.f64 eps 4) (*.f64 eps (*.f64 eps 1/4)))
(fma.f64 eps (*.f64 eps 1/4) (*.f64 -1/48 (pow.f64 eps 4)))
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/48) 1/4))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps -1/48) 1/4)))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 1/1440 (pow.f64 eps 6))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 -1/48 (pow.f64 eps 4) (*.f64 1/1440 (pow.f64 eps 6))))
(fma.f64 eps (*.f64 eps 1/4) (fma.f64 -1/48 (pow.f64 eps 4) (*.f64 1/1440 (pow.f64 eps 6))))
(fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 eps (*.f64 eps 1/4) (*.f64 1/1440 (pow.f64 eps 6))))
(fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 eps (*.f64 eps 1/4))))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (+.f64 (*.f64 -1/80640 (pow.f64 eps 8)) (*.f64 1/1440 (pow.f64 eps 6)))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 -1/80640 (pow.f64 eps 8) (*.f64 1/1440 (pow.f64 eps 6)))))
(fma.f64 eps (*.f64 eps 1/4) (fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/80640 (pow.f64 eps 8)))))
(fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 eps (*.f64 eps 1/4) (fma.f64 -1/80640 (pow.f64 eps 8) (*.f64 1/1440 (pow.f64 eps 6)))))
(fma.f64 -1/80640 (pow.f64 eps 8) (fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 eps (*.f64 eps 1/4)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 (*.f64 eps eps) -1/2)
(*.f64 eps (*.f64 eps -1/2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 (*.f64 eps eps) -1/2))
(fma.f64 (*.f64 eps eps) -1/2 (*.f64 (pow.f64 eps 4) 1/24))
(fma.f64 eps (*.f64 eps -1/2) (*.f64 (pow.f64 eps 4) 1/24))
(fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -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 (pow.f64 eps 6) -1/720)))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (*.f64 eps eps) -1/2 (*.f64 (pow.f64 eps 6) -1/720)))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 (pow.f64 eps 6) -1/720)))
(+.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 (pow.f64 eps 8) 1/40320))))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (*.f64 eps eps) -1/2 (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320))))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320))))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (*.f64 (pow.f64 eps 6) -1/720)))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 8) 1/40320 (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 (pow.f64 eps 6) -1/720))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)

localize42.0ms (0.2%)

Local error

Found 8 expressions with local error:

NewErrorProgram
3.3b
(cos.f64 (+.f64 x eps))
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
0.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
0.2b
(cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
0.2b
(cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
0.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
1.8b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
3.3b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 39 to 10 computations (74.4% saved)

series26.0ms (0.1%)

Counts
2 → 40
Calls

12 calls:

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

rewrite96.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify166.0ms (0.9%)

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

Useful iterations: 3 (0.0ms)

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

localize55.0ms (0.3%)

Local error

Found 8 expressions with local error:

NewErrorProgram
1.8b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
0.1b
(/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x)))
0.1b
(exp.f64 (cos.f64 (+.f64 x eps)))
0.1b
(exp.f64 (cos.f64 x))
0.1b
(exp.f64 (cos.f64 (+.f64 x eps)))
0.1b
(/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x)))
1.8b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
3.3b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 40 to 9 computations (77.5% saved)

series234.0ms (1.2%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
84.0ms
eps
@inf
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
69.0ms
x
@inf
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
34.0ms
x
@-inf
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
28.0ms
eps
@-inf
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
6.0ms
eps
@0
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))

rewrite281.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
775×prod-diff_binary64
530×log-prod_binary64
293×fma-def_binary64
292×pow2_binary64
202×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify122.0ms (0.6%)

Algorithm
egg-herbie
Rules
796×associate-+l+_binary64
734×associate-+r+_binary64
665×distribute-rgt-in_binary64
664×distribute-lft-in_binary64
234×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02042046
16951904
225531816
Stop Event
node limit
Counts
284 → 268
Calls
Call 1
Inputs
(log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (*.f64 -1 (pow.f64 (sin.f64 eps) 2))) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (*.f64 -1 (pow.f64 (sin.f64 eps) 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 6 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))))) (exp.f64 1)) (*.f64 1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 eps) 3)) (*.f64 6 (/.f64 (*.f64 (sin.f64 eps) (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1))) (exp.f64 (cos.f64 eps)))))) (pow.f64 x 3))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 6 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 x) 3)) (*.f64 6 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 6 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 x) 3)) (*.f64 6 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -12 (pow.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))) 2)) (+.f64 (*.f64 -6 (pow.f64 (sin.f64 x) 4)) (+.f64 (*.f64 24 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x)))))) (+.f64 (*.f64 24 (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 1/24 (pow.f64 (sin.f64 x) 4)) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2))))))) (*.f64 24 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(/.f64 (exp.f64 (cos.f64 eps)) (E.f64))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (E.f64)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))) (pow.f64 x 2)) (/.f64 (exp.f64 (cos.f64 eps)) (E.f64))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (E.f64)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))) (pow.f64 x 2)) (+.f64 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)) (*.f64 (-.f64 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))))) (E.f64)) (*.f64 1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (exp.f64 1)))) (pow.f64 x 3)))))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
1
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(exp.f64 (cos.f64 eps))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (exp.f64 (cos.f64 eps)))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (exp.f64 (cos.f64 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (pow.f64 x 3))) (+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (exp.f64 (cos.f64 eps)) (pow.f64 x 2))))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 x))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (exp.f64 (cos.f64 x)))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 2) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))) (exp.f64 (cos.f64 x))))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 3) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x)))))) (+.f64 (*.f64 (pow.f64 eps 2) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))) (exp.f64 (cos.f64 x)))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
Outputs
(log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)))
(+.f64 (cos.f64 eps) -1)
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) (*.f64 (neg.f64 x) (sin.f64 eps)))
(-.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (sin.f64 eps)))
(-.f64 (cos.f64 eps) (+.f64 1 (*.f64 x (sin.f64 eps))))
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (*.f64 -1 (pow.f64 (sin.f64 eps) 2))) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) (fma.f64 1/2 (*.f64 (fma.f64 2 (/.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (/.f64 (E.f64) (exp.f64 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (-.f64 (cos.f64 eps) 1)))) (exp.f64 (-.f64 (cos.f64 eps) 1))) (neg.f64 (pow.f64 (sin.f64 eps) 2))) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps))))
(+.f64 (+.f64 (cos.f64 eps) -1) (-.f64 (*.f64 1/2 (*.f64 x (*.f64 x (-.f64 (*.f64 2 (/.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (exp.f64 (-.f64 1 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (+.f64 (cos.f64 eps) -1)))) (exp.f64 (+.f64 (cos.f64 eps) -1)))) (pow.f64 (sin.f64 eps) 2))))) (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 (*.f64 1/2 (-.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 1 (cos.f64 eps))) (fma.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (E.f64)) (exp.f64 (cos.f64 eps)) (/.f64 1/2 (exp.f64 (-.f64 1 (cos.f64 eps))))))) (pow.f64 (sin.f64 eps) 2))) x) (sin.f64 eps)))))
(+.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (*.f64 -1 (pow.f64 (sin.f64 eps) 2))) (pow.f64 x 2))) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 6 (/.f64 (*.f64 (-.f64 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))))) (exp.f64 1)) (*.f64 1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (E.f64)))) (exp.f64 1)) (exp.f64 (cos.f64 eps)))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 eps) 3)) (*.f64 6 (/.f64 (*.f64 (sin.f64 eps) (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (exp.f64 1)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))) (exp.f64 1))) (exp.f64 (cos.f64 eps)))))) (pow.f64 x 3))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(+.f64 (log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) (fma.f64 1/2 (*.f64 (fma.f64 2 (/.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (/.f64 (E.f64) (exp.f64 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (-.f64 (cos.f64 eps) 1)))) (exp.f64 (-.f64 (cos.f64 eps) 1))) (neg.f64 (pow.f64 (sin.f64 eps) 2))) (*.f64 x x)) (fma.f64 1/6 (*.f64 (fma.f64 6 (/.f64 (+.f64 (/.f64 (exp.f64 (cos.f64 eps)) (/.f64 (E.f64) (fma.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps)) (fma.f64 1/6 (sin.f64 eps) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))))) (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (E.f64)))) (exp.f64 (-.f64 (cos.f64 eps) 1))) (fma.f64 -2 (pow.f64 (sin.f64 eps) 3) (*.f64 6 (/.f64 (sin.f64 eps) (/.f64 (exp.f64 (cos.f64 eps)) (*.f64 (E.f64) (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (/.f64 (E.f64) (exp.f64 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (-.f64 (cos.f64 eps) 1)))))))))) (pow.f64 x 3)) (*.f64 (neg.f64 x) (sin.f64 eps)))))
(+.f64 (+.f64 (cos.f64 eps) -1) (-.f64 (fma.f64 1/2 (*.f64 x (*.f64 x (-.f64 (*.f64 2 (/.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (exp.f64 (-.f64 1 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (+.f64 (cos.f64 eps) -1)))) (exp.f64 (+.f64 (cos.f64 eps) -1)))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 1/6 (*.f64 (fma.f64 6 (/.f64 (+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6)))) (*.f64 -1/2 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 eps)))) (exp.f64 (+.f64 (cos.f64 eps) -1))) (fma.f64 6 (/.f64 (sin.f64 eps) (/.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (exp.f64 (-.f64 1 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (pow.f64 (sin.f64 eps) 3) -2))) (pow.f64 x 3)))) (*.f64 x (sin.f64 eps))))
(+.f64 (*.f64 x (-.f64 (*.f64 (*.f64 1/2 (-.f64 (*.f64 2 (*.f64 (exp.f64 (-.f64 1 (cos.f64 eps))) (fma.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (E.f64)) (exp.f64 (cos.f64 eps)) (/.f64 1/2 (exp.f64 (-.f64 1 (cos.f64 eps))))))) (pow.f64 (sin.f64 eps) 2))) x) (sin.f64 eps))) (+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 1/6 (*.f64 (fma.f64 6 (*.f64 (exp.f64 (-.f64 1 (cos.f64 eps))) (fma.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6))) (*.f64 -1/2 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 eps))))) (fma.f64 6 (*.f64 (/.f64 (sin.f64 eps) (exp.f64 (+.f64 (cos.f64 eps) -1))) (fma.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (E.f64)) (exp.f64 (cos.f64 eps)) (/.f64 1/2 (exp.f64 (-.f64 1 (cos.f64 eps)))))) (*.f64 (pow.f64 (sin.f64 eps) 3) -2))) (pow.f64 x 3)))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))
(fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1 (pow.f64 (sin.f64 x) 2) (*.f64 2 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))))
(-.f64 (*.f64 1/2 (*.f64 eps (*.f64 eps (-.f64 (+.f64 (*.f64 -1 (cos.f64 x)) (*.f64 1 (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 2))))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 1/2 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 0) (neg.f64 (cos.f64 x))))) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 6 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 x) 3)) (*.f64 6 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x)))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1 (pow.f64 (sin.f64 x) 2) (*.f64 2 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (-.f64 (*.f64 1/2 (*.f64 eps (*.f64 eps (-.f64 (+.f64 (*.f64 -1 (cos.f64 x)) (*.f64 1 (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 2))))) (*.f64 eps (sin.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (-.f64 (*.f64 1/2 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 0) (neg.f64 (cos.f64 x))))) (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 6 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 (*.f64 -2 (pow.f64 (sin.f64 x) 3)) (*.f64 6 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -12 (pow.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))) 2)) (+.f64 (*.f64 -6 (pow.f64 (sin.f64 x) 4)) (+.f64 (*.f64 24 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x)))))) (+.f64 (*.f64 24 (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 1/24 (pow.f64 (sin.f64 x) 4)) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2))))))) (*.f64 24 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (*.f64 2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x)))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (fma.f64 1/24 (*.f64 (pow.f64 eps 4) (fma.f64 -12 (pow.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) 2) (fma.f64 -6 (pow.f64 (sin.f64 x) 4) (fma.f64 24 (*.f64 (sin.f64 x) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x))))) (*.f64 24 (+.f64 (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 1/24 (cos.f64 x) (fma.f64 1/24 (pow.f64 (sin.f64 x) 4) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2)))))) (*.f64 (pow.f64 (sin.f64 x) 2) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))))) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1 (pow.f64 (sin.f64 x) 2) (*.f64 2 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (fma.f64 1/24 (*.f64 (pow.f64 eps 4) (fma.f64 -12 (pow.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) 2) (fma.f64 -6 (pow.f64 (sin.f64 x) 4) (*.f64 24 (+.f64 (+.f64 (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 (cos.f64 x) 1/24 (fma.f64 1/24 (pow.f64 (sin.f64 x) 4) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2)))))) (*.f64 (pow.f64 (sin.f64 x) 2) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))) (*.f64 (sin.f64 x) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))))))))) (-.f64 (*.f64 1/2 (*.f64 eps (*.f64 eps (-.f64 (+.f64 (*.f64 -1 (cos.f64 x)) (*.f64 1 (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 2))))) (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 6 (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) (fma.f64 -2 (pow.f64 (sin.f64 x) 3) (*.f64 6 (*.f64 (sin.f64 x) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))) (fma.f64 1/24 (*.f64 (pow.f64 eps 4) (fma.f64 -12 (pow.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) 2) (fma.f64 -6 (pow.f64 (sin.f64 x) 4) (*.f64 24 (+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6)))) (+.f64 (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 (cos.f64 x) 1/24 (fma.f64 1/24 (pow.f64 (sin.f64 x) 4) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2))))) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 (cos.f64 x) -1/4) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))))))) (-.f64 (*.f64 1/2 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 (sin.f64 x) 2) 0) (neg.f64 (cos.f64 x))))) (*.f64 eps (sin.f64 x)))))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x))))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(/.f64 (exp.f64 (cos.f64 eps)) (E.f64))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)))
(fma.f64 -1 (/.f64 (exp.f64 (cos.f64 eps)) (/.f64 (E.f64) (*.f64 x (sin.f64 eps)))) (exp.f64 (-.f64 (cos.f64 eps) 1)))
(-.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 x (sin.f64 eps))))
(-.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (/.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (-.f64 1 (cos.f64 eps)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (E.f64)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))) (pow.f64 x 2)) (/.f64 (exp.f64 (cos.f64 eps)) (E.f64))))
(fma.f64 -1 (/.f64 (exp.f64 (cos.f64 eps)) (/.f64 (E.f64) (*.f64 x (sin.f64 eps)))) (fma.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (/.f64 (E.f64) (exp.f64 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (-.f64 (cos.f64 eps) 1)))) (*.f64 x x) (exp.f64 (-.f64 (cos.f64 eps) 1))))
(-.f64 (fma.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (exp.f64 (-.f64 1 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (+.f64 (cos.f64 eps) -1)))) (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 x (sin.f64 eps))))
(-.f64 (fma.f64 (fma.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (E.f64)) (exp.f64 (cos.f64 eps)) (/.f64 1/2 (exp.f64 (-.f64 1 (cos.f64 eps))))) (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))) (/.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (-.f64 1 (cos.f64 eps)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (E.f64))) (+.f64 (*.f64 (-.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (exp.f64 (cos.f64 eps))) (E.f64)) (*.f64 -1/2 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 1)))) (pow.f64 x 2)) (+.f64 (/.f64 (exp.f64 (cos.f64 eps)) (E.f64)) (*.f64 (-.f64 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))))) (E.f64)) (*.f64 1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (exp.f64 1)))) (pow.f64 x 3)))))
(fma.f64 -1 (/.f64 (exp.f64 (cos.f64 eps)) (/.f64 (E.f64) (*.f64 x (sin.f64 eps)))) (+.f64 (fma.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (/.f64 (E.f64) (exp.f64 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (-.f64 (cos.f64 eps) 1)))) (*.f64 x x) (exp.f64 (-.f64 (cos.f64 eps) 1))) (*.f64 (+.f64 (/.f64 (exp.f64 (cos.f64 eps)) (/.f64 (E.f64) (fma.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps)) (fma.f64 1/6 (sin.f64 eps) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))))) (*.f64 -1/2 (/.f64 (*.f64 (exp.f64 (cos.f64 eps)) (sin.f64 eps)) (E.f64)))) (pow.f64 x 3))))
(-.f64 (fma.f64 (+.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (exp.f64 (-.f64 1 (cos.f64 eps)))) (*.f64 1/2 (exp.f64 (+.f64 (cos.f64 eps) -1)))) (*.f64 x x) (fma.f64 (+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6)))) (*.f64 -1/2 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 eps)))) (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1)))) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 x (sin.f64 eps))))
(-.f64 (fma.f64 (fma.f64 (/.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (E.f64)) (exp.f64 (cos.f64 eps)) (/.f64 1/2 (exp.f64 (-.f64 1 (cos.f64 eps))))) (*.f64 x x) (fma.f64 (fma.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6))) (*.f64 -1/2 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 eps)))) (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1)))) (/.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (-.f64 1 (cos.f64 eps)))))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
1
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 1 (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 1 (*.f64 eps (sin.f64 x)))
(fma.f64 (neg.f64 eps) (sin.f64 x) 1)
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))
(+.f64 1 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))))
(+.f64 1 (*.f64 eps (-.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) eps) (sin.f64 x))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))))
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x)))) (+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))))
(+.f64 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) 1))
(+.f64 (*.f64 eps (-.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) eps) (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) 1))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (+.f64 eps x))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps)))) (exp.f64 (cos.f64 x)))
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(exp.f64 (cos.f64 eps))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (exp.f64 (cos.f64 eps)))
(fma.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (exp.f64 (cos.f64 eps)))
(fma.f64 (neg.f64 (exp.f64 (cos.f64 eps))) (*.f64 x (sin.f64 eps)) (exp.f64 (cos.f64 eps)))
(*.f64 (+.f64 (*.f64 (sin.f64 eps) (neg.f64 x)) 1) (exp.f64 (cos.f64 eps)))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (exp.f64 (cos.f64 eps)) (pow.f64 x 2)))))
(+.f64 (fma.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (exp.f64 (cos.f64 eps))) (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x x))))
(-.f64 (fma.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x x)) (exp.f64 (cos.f64 eps))) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))))
(+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)) (*.f64 (sin.f64 eps) (neg.f64 x)))))
(+.f64 (*.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (pow.f64 x 3))) (+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (exp.f64 (cos.f64 eps)) (pow.f64 x 2))))))
(fma.f64 -1 (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))) (fma.f64 (exp.f64 (cos.f64 eps)) (*.f64 (fma.f64 1/2 (*.f64 (cos.f64 eps) (sin.f64 eps)) (fma.f64 1/6 (sin.f64 eps) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (pow.f64 x 3)) (+.f64 (exp.f64 (cos.f64 eps)) (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x x))))))
(-.f64 (fma.f64 (exp.f64 (cos.f64 eps)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6))) (pow.f64 x 3)) (fma.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x x)) (exp.f64 (cos.f64 eps)))) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))))
(-.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) 1/2) 1/6))) (pow.f64 x 3)) 1))) (*.f64 (exp.f64 (cos.f64 eps)) (*.f64 x (sin.f64 eps))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 x))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (exp.f64 (cos.f64 x)))
(fma.f64 -1 (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))) (exp.f64 (cos.f64 x)))
(-.f64 (exp.f64 (cos.f64 x)) (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))))
(*.f64 (fma.f64 (neg.f64 eps) (sin.f64 x) 1) (exp.f64 (cos.f64 x)))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 2) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))) (exp.f64 (cos.f64 x))))
(fma.f64 -1 (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))) (fma.f64 (*.f64 eps eps) (*.f64 (exp.f64 (cos.f64 x)) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (exp.f64 (cos.f64 x))))
(-.f64 (fma.f64 (*.f64 eps (*.f64 eps (exp.f64 (cos.f64 x)))) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) (exp.f64 (cos.f64 x))) (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))))
(+.f64 (exp.f64 (cos.f64 x)) (*.f64 (exp.f64 (cos.f64 x)) (*.f64 eps (-.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) eps) (sin.f64 x)))))
(+.f64 (*.f64 -1 (*.f64 eps (*.f64 (sin.f64 x) (exp.f64 (cos.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 3) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x)))))) (+.f64 (*.f64 (pow.f64 eps 2) (*.f64 (exp.f64 (cos.f64 x)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))) (exp.f64 (cos.f64 x)))))
(fma.f64 -1 (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (exp.f64 (cos.f64 x)) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x))))) (fma.f64 (*.f64 eps eps) (*.f64 (exp.f64 (cos.f64 x)) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (exp.f64 (cos.f64 x)))))
(-.f64 (fma.f64 (*.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) (fma.f64 (*.f64 eps (*.f64 eps (exp.f64 (cos.f64 x)))) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) (exp.f64 (cos.f64 x)))) (*.f64 eps (*.f64 (exp.f64 (cos.f64 x)) (sin.f64 x))))
(+.f64 (*.f64 (exp.f64 (cos.f64 x)) (*.f64 eps (-.f64 (*.f64 (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) eps) (sin.f64 x)))) (*.f64 (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) 1) (exp.f64 (cos.f64 x))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (+.f64 eps x)))
(exp.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))))
(exp.f64 (cos.f64 (+.f64 eps x)))

eval1.3s (6.8%)

Compiler

Compiled 27505 to 13586 computations (50.6% saved)

prune408.0ms (2.2%)

Pruning

93 alts after pruning (88 fresh and 5 done)

PrunedKeptTotal
New1080361116
Fresh215273
Picked011
Done246
Total1103931196
Error
0.1b
Counts
1196 → 93
Alt Table
Click to see full alt table
StatusErrorProgram
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))
26.5b
(pow.f64 (cbrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 3)
36.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
26.1b
(-.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
57.2b
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)
51.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
39.5b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
13.7b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
39.5b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
39.1b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
39.0b
(log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 (cos.f64 x))))
26.5b
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 3)
32.3b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))) 2)) -2)
36.7b
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 3))
56.2b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
39.1b
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
26.1b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
33.2b
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) -2)
57.1b
(log.f64 1)
39.7b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
26.3b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
33.9b
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
46.7b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
35.0b
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
33.2b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
39.3b
(-.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x))
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
33.7b
(-.f64 (fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
33.6b
(pow.f64 (*.f64 (cbrt.f64 -2) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))) 3)
50.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 1/2 eps)) -2)
34.2b
(pow.f64 (cbrt.f64 (fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 3)
33.8b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))
56.2b
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (neg.f64 (cos.f64 x)))))
31.6b
(-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
26.2b
(log.f64 (exp.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
37.9b
(*.f64 eps (neg.f64 (sin.f64 x)))
39.2b
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
49.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
15.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 3))))) -2)
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
51.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
39.6b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2)
39.1b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
15.2b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
31.6b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
26.1b
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
43.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
28.9b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2)
39.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 1))
46.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
39.1b
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
26.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 x))
48.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
26.1b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
26.7b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))))) -2)
21.3b
(*.f64 (/.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3))) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))) -2)
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 eps 1/2))))) -2)
39.5b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
43.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2)
26.8b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
43.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2)
57.2b
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x)))))
36.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 1 eps)) 1/2))) -2)
37.9b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (cos.f64 (*.f64 1/2 x)))) -2)
39.4b
(+.f64 (cos.f64 eps) -1)
52.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
33.9b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
26.2b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x)))))
31.4b
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))
45.7b
(*.f64 eps (fma.f64 -1/2 eps (neg.f64 x)))
33.0b
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3))) -2)
39.0b
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))
45.7b
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2)))
40.6b
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x))
41.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (fma.f64 x x (*.f64 (+.f64 x eps) eps))) 1/2))) -2)
39.5b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
51.1b
(*.f64 -1/2 (*.f64 eps eps))
38.3b
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
40.3b
(-.f64 (cos.f64 eps) (+.f64 1 (*.f64 x (sin.f64 eps))))
51.3b
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
42.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (*.f64 eps eps) eps) 1/2))) -2)
33.0b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))) 3)) -2)
38.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (cos.f64 x)))
39.5b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))))))) -2)
39.1b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
31.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2)
51.0b
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
38.9b
(-.f64 (cos.f64 eps) (cos.f64 x))
33.3b
(log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
39.5b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
26.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
Compiler

Compiled 3125 to 2314 computations (26% saved)

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 65 to 48 computations (26.2% saved)

series7.0ms (0%)

Counts
2 → 32
Calls

12 calls:

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

rewrite65.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
623×log-prod_binary64
506×fma-def_binary64
336×pow2_binary64
271×fma-neg_binary64
234×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify67.0ms (0.4%)

Algorithm
egg-herbie
Rules
649×fma-neg_binary64
576×fma-def_binary64
441×neg-sub0_binary64
396×neg-mul-1_binary64
352×unswap-sqr_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
085721
1245645
2698614
32728544
45720541
Stop Event
node limit
Counts
85 → 88
Calls
Call 1
Inputs
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
Outputs
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))))
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (sin.f64 x)))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)))))
(+.f64 (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps)))))
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))
(sin.f64 (fma.f64 1/2 eps x))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(*.f64 1/2 (*.f64 (sin.f64 x) eps))
(*.f64 (sin.f64 x) (*.f64 1/2 eps))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 (sin.f64 x) eps)))
(fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) 1/4)))
(fma.f64 (sin.f64 x) (*.f64 1/2 eps) (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4))))
(*.f64 eps (+.f64 (*.f64 (sin.f64 x) 1/2) (*.f64 (cos.f64 x) (*.f64 eps 1/4))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 (sin.f64 x) eps))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 (sin.f64 x) eps)))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4))))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (fma.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4)))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 x x)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))
(fma.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 x x))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))))
(+.f64 (*.f64 x (*.f64 -1/2 (*.f64 x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (sin.f64 (*.f64 1/2 eps))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x))))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 29 to 17 computations (41.4% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite59.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
816×pow1_binary64
767×add-log-exp_binary64
766×log1p-expm1-u_binary64
766×expm1-log1p-u_binary64
754×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0813
11787
223977
Stop Event
node limit
Counts
1 → 46
Calls
Call 1
Inputs
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (fma.f64 -1/2 (*.f64 eps eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (*.f64 eps eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (fma.f64 -1/2 (*.f64 eps eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 -1/2 (*.f64 eps eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 -1/2 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps (*.f64 -1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps eps) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (*.f64 eps eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 eps 4)) (*.f64 (pow.f64 (cbrt.f64 eps) 2) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 eps eps))) (cbrt.f64 (*.f64 (pow.f64 eps 4) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 eps 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps (sqrt.f64 -1/2)) (*.f64 eps (sqrt.f64 -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 3) -1) (/.f64 1 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) -1) (/.f64 1 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 1 (*.f64 eps (sqrt.f64 -1/2))) 1) (-.f64 (hypot.f64 1 (*.f64 eps (sqrt.f64 -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 eps 4))) (pow.f64 (cbrt.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -1/2 eps) 1) eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -1/2 eps) (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -1/2 eps) (sqrt.f64 eps)) (sqrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2)) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 3) -1) (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) (-.f64 1 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) -1) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) -1) (-.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 3) -1)) (neg.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2) -1)) (neg.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) -1) 3)) (+.f64 1 (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) -1) (fma.f64 -1/2 (*.f64 eps eps) -1)) (fma.f64 -1/2 (*.f64 eps eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) -1) (fma.f64 -1/2 (*.f64 eps eps) -1))) (-.f64 1 (fma.f64 -1/2 (*.f64 eps eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 eps eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (sqrt.f64 -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 eps eps) 3) -1/8) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 4) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 eps eps) 3) -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -1/2 (*.f64 eps eps) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) 2)) (cbrt.f64 (fma.f64 -1/2 (*.f64 eps eps) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (*.f64 eps (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 eps (sqrt.f64 -1/2))) -1)))))

simplify172.0ms (0.9%)

Algorithm
egg-herbie
Rules
1082×sqr-pow_binary64
617×cube-prod_binary64
554×fabs-mul_binary64
523×pow-sqr_binary64
441×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0684
11284
22384
34484
410584
533184
6125084
7212384
8228784
9247184
10267984
11297684
12337184
13385284
14441884
15510284
16593584
17632784
18661984
19689584
20696984
21700384
22794484
Stop Event
node limit
Counts
58 → 47
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (pow.f64 eps 2))
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 -1/2 eps))

localize14.0ms (0.1%)

Local error

Found 6 expressions with local error:

NewErrorProgram
1.8b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
1.8b
(+.f64 (cos.f64 eps) -1)
0.1b
(exp.f64 (+.f64 (cos.f64 eps) -1))
0.1b
(exp.f64 (+.f64 (cos.f64 eps) -1))
1.8b
(+.f64 (cos.f64 eps) -1)
1.8b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
Compiler

Compiled 21 to 13 computations (38.1% 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
(exp.f64 (+.f64 (cos.f64 eps) -1))
0.0ms
eps
@-inf
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))

rewrite55.0ms (0.3%)

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))))))))

simplify89.0ms (0.5%)

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))

localize28.0ms (0.2%)

Local error

Found 8 expressions with local error:

NewErrorProgram
6.2b
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))
0.3b
(pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2)
0.2b
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
0.0b
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
0.0b
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
0.2b
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)
0.3b
(pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2)
6.2b
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))
Compiler

Compiled 48 to 41 computations (14.6% saved)

series5.0ms (0%)

Counts
4 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
eps
@inf
(pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2)
1.0ms
eps
@0
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))
1.0ms
eps
@-inf
(pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2)
1.0ms
eps
@-inf
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))
1.0ms
eps
@inf
(sqrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 2))

rewrite80.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
808×pow1_binary64
746×add-log-exp_binary64
746×log1p-expm1-u_binary64
746×expm1-log1p-u_binary64
728×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify233.0ms (1.2%)

Algorithm
egg-herbie
Rules
773×sqr-pow_binary64
588×*-commutative_binary64
562×distribute-rgt-out_binary64
478×associate-+l+_binary64
469×cube-prod_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
070640
1164640
2402640
31358640
42369640
53121640
63930640
74275640
84604640
94917640
105422640
116047640
126631640
137332640
147694640
Stop Event
node limit
Counts
129 → 106
Calls
Call 1
Inputs
(*.f64 1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/2 (pow.f64 eps 2)) (*.f64 -1/24 (pow.f64 eps 4)))
(+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 -1/40320 (pow.f64 eps 8)) (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6)))))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 1/4 (pow.f64 eps 4))
(+.f64 (*.f64 1/4 (pow.f64 eps 4)) (*.f64 -1/24 (pow.f64 eps 6)))
(+.f64 (*.f64 1/4 (pow.f64 eps 4)) (+.f64 (*.f64 -1/24 (pow.f64 eps 6)) (*.f64 1/320 (pow.f64 eps 8))))
(+.f64 (*.f64 -17/120960 (pow.f64 eps 10)) (+.f64 (*.f64 1/4 (pow.f64 eps 4)) (+.f64 (*.f64 -1/24 (pow.f64 eps 6)) (*.f64 1/320 (pow.f64 eps 8)))))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 1/4 (pow.f64 eps 2))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (*.f64 -1/48 (pow.f64 eps 4)))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 1/1440 (pow.f64 eps 6))))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (+.f64 (*.f64 -1/80640 (pow.f64 eps 8)) (*.f64 1/1440 (pow.f64 eps 6)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(*.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 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
Outputs
(*.f64 1/2 (pow.f64 eps 2))
(*.f64 1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/2 (pow.f64 eps 2)) (*.f64 -1/24 (pow.f64 eps 4)))
(fma.f64 1/2 (*.f64 eps eps) (*.f64 -1/24 (pow.f64 eps 4)))
(fma.f64 -1/24 (pow.f64 eps 4) (*.f64 1/2 (*.f64 eps eps)))
(+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6))))
(fma.f64 1/2 (*.f64 eps eps) (fma.f64 -1/24 (pow.f64 eps 4) (*.f64 1/720 (pow.f64 eps 6))))
(fma.f64 1/2 (*.f64 eps eps) (fma.f64 1/720 (pow.f64 eps 6) (*.f64 -1/24 (pow.f64 eps 4))))
(fma.f64 -1/24 (pow.f64 eps 4) (fma.f64 1/720 (pow.f64 eps 6) (*.f64 1/2 (*.f64 eps eps))))
(+.f64 (*.f64 -1/40320 (pow.f64 eps 8)) (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6)))))
(fma.f64 -1/40320 (pow.f64 eps 8) (fma.f64 1/2 (*.f64 eps eps) (fma.f64 -1/24 (pow.f64 eps 4) (*.f64 1/720 (pow.f64 eps 6)))))
(fma.f64 -1/40320 (pow.f64 eps 8) (fma.f64 1/2 (*.f64 eps eps) (fma.f64 1/720 (pow.f64 eps 6) (*.f64 -1/24 (pow.f64 eps 4)))))
(fma.f64 1/2 (*.f64 eps eps) (fma.f64 -1/40320 (pow.f64 eps 8) (fma.f64 -1/24 (pow.f64 eps 4) (*.f64 1/720 (pow.f64 eps 6)))))
(fma.f64 -1/40320 (pow.f64 eps 8) (fma.f64 -1/24 (pow.f64 eps 4) (fma.f64 1/720 (pow.f64 eps 6) (*.f64 1/2 (*.f64 eps eps)))))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 1/4 (pow.f64 eps 4))
(*.f64 (pow.f64 eps 4) 1/4)
(+.f64 (*.f64 1/4 (pow.f64 eps 4)) (*.f64 -1/24 (pow.f64 eps 6)))
(fma.f64 1/4 (pow.f64 eps 4) (*.f64 -1/24 (pow.f64 eps 6)))
(fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 4) 1/4))
(fma.f64 (pow.f64 eps 4) 1/4 (*.f64 -1/24 (pow.f64 eps 6)))
(+.f64 (*.f64 1/4 (pow.f64 eps 4)) (+.f64 (*.f64 -1/24 (pow.f64 eps 6)) (*.f64 1/320 (pow.f64 eps 8))))
(fma.f64 1/4 (pow.f64 eps 4) (fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/320)))
(fma.f64 (pow.f64 eps 4) 1/4 (fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/320)))
(fma.f64 (pow.f64 eps 8) 1/320 (fma.f64 (pow.f64 eps 4) 1/4 (*.f64 -1/24 (pow.f64 eps 6))))
(fma.f64 -1/24 (pow.f64 eps 6) (fma.f64 (pow.f64 eps 4) 1/4 (*.f64 (pow.f64 eps 8) 1/320)))
(+.f64 (*.f64 -17/120960 (pow.f64 eps 10)) (+.f64 (*.f64 1/4 (pow.f64 eps 4)) (+.f64 (*.f64 -1/24 (pow.f64 eps 6)) (*.f64 1/320 (pow.f64 eps 8)))))
(fma.f64 -17/120960 (pow.f64 eps 10) (fma.f64 1/4 (pow.f64 eps 4) (fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/320))))
(fma.f64 -17/120960 (pow.f64 eps 10) (fma.f64 (pow.f64 eps 4) 1/4 (fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/320))))
(fma.f64 -17/120960 (pow.f64 eps 10) (fma.f64 (pow.f64 eps 8) 1/320 (fma.f64 (pow.f64 eps 4) 1/4 (*.f64 -1/24 (pow.f64 eps 6)))))
(fma.f64 -17/120960 (pow.f64 eps 10) (fma.f64 -1/24 (pow.f64 eps 6) (fma.f64 (pow.f64 eps 4) 1/4 (*.f64 (pow.f64 eps 8) 1/320))))
(fma.f64 (pow.f64 eps 4) 1/4 (fma.f64 -17/120960 (pow.f64 eps 10) (fma.f64 -1/24 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/320))))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 4 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4))
(*.f64 1/4 (pow.f64 eps 2))
(*.f64 (*.f64 eps eps) 1/4)
(*.f64 eps (*.f64 eps 1/4))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (*.f64 -1/48 (pow.f64 eps 4)))
(fma.f64 1/4 (*.f64 eps eps) (*.f64 (pow.f64 eps 4) -1/48))
(fma.f64 (*.f64 eps eps) 1/4 (*.f64 (pow.f64 eps 4) -1/48))
(fma.f64 eps (*.f64 eps 1/4) (*.f64 (pow.f64 eps 4) -1/48))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 1/1440 (pow.f64 eps 6))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 -1/48 (pow.f64 eps 4) (*.f64 (pow.f64 eps 6) 1/1440)))
(fma.f64 (*.f64 eps eps) 1/4 (fma.f64 (pow.f64 eps 4) -1/48 (*.f64 (pow.f64 eps 6) 1/1440)))
(fma.f64 eps (*.f64 eps 1/4) (fma.f64 (pow.f64 eps 4) -1/48 (*.f64 (pow.f64 eps 6) 1/1440)))
(fma.f64 (pow.f64 eps 4) -1/48 (fma.f64 eps (*.f64 eps 1/4) (*.f64 (pow.f64 eps 6) 1/1440)))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (+.f64 (*.f64 -1/80640 (pow.f64 eps 8)) (*.f64 1/1440 (pow.f64 eps 6)))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 -1/48 (pow.f64 eps 4) (fma.f64 -1/80640 (pow.f64 eps 8) (*.f64 (pow.f64 eps 6) 1/1440))))
(fma.f64 (*.f64 eps eps) 1/4 (fma.f64 (pow.f64 eps 4) -1/48 (fma.f64 (pow.f64 eps 6) 1/1440 (*.f64 (pow.f64 eps 8) -1/80640))))
(fma.f64 eps (*.f64 eps 1/4) (fma.f64 (pow.f64 eps 4) -1/48 (fma.f64 (pow.f64 eps 6) 1/1440 (*.f64 (pow.f64 eps 8) -1/80640))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 (*.f64 eps eps) -1/2)
(*.f64 eps (*.f64 eps -1/2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 (*.f64 eps eps) -1/2))
(fma.f64 (*.f64 eps eps) -1/2 (*.f64 (pow.f64 eps 4) 1/24))
(fma.f64 eps (*.f64 eps -1/2) (*.f64 (pow.f64 eps 4) 1/24))
(+.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 (pow.f64 eps 6) -1/720)))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (*.f64 eps eps) -1/2 (*.f64 (pow.f64 eps 6) -1/720)))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 eps (*.f64 eps -1/2) (*.f64 (pow.f64 eps 6) -1/720)))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 (pow.f64 eps 6) -1/720)))
(+.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 (pow.f64 eps 8) 1/40320))))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (*.f64 eps eps) -1/2 (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320))))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320))))
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (pow.f64 eps 6) -1/720 (fma.f64 (*.f64 eps eps) -1/2 (*.f64 (pow.f64 eps 8) 1/40320))))
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)

localize99.0ms (0.5%)

Local error

Found 8 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3)
0.3b
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)
0.3b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3))
0.0b
(+.f64 x (+.f64 x eps))
0.3b
(pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)
0.5b
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3)
3.3b
(sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))
19.6b
(cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)))
Compiler

Compiled 108 to 64 computations (40.7% saved)

series22.0ms (0.1%)

Counts
4 → 84
Calls

21 calls:

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

rewrite120.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
771×log-prod_binary64
530×fma-def_binary64
280×expm1-udef_binary64
280×log1p-udef_binary64
261×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify89.0ms (0.5%)

Algorithm
egg-herbie
Rules
547×unsub-neg_binary64
546×associate-+l+_binary64
465×associate-+r+_binary64
399×*-commutative_binary64
394×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01791925
16021802
219761569
355301569
Stop Event
node limit
Counts
192 → 171
Calls
Call 1
Inputs
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))))) (pow.f64 x 2))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (*.f64 -1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))))) (pow.f64 x 2)))))
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 x) 3)
(+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 1/2 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x)))))) (+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3)))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 1/2 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x)))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/8 (*.f64 (cos.f64 x) (sin.f64 x))))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (*.f64 1/2 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3))))
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(*.f64 1/8 (pow.f64 eps 3))
(+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3)))
(+.f64 (*.f64 13/15360 (pow.f64 eps 7)) (+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3))))
(+.f64 (*.f64 -41/1548288 (pow.f64 eps 9)) (+.f64 (*.f64 13/15360 (pow.f64 eps 7)) (+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
Outputs
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 x x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(*.f64 eps (*.f64 1/2 (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 (*.f64 1/4 eps) eps)))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 eps (*.f64 1/2 (sin.f64 x)))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 eps (*.f64 1/2 (sin.f64 x))))))
(+.f64 (fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))) (*.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps)))) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))
(fma.f64 -1/8 (*.f64 eps (*.f64 eps (sin.f64 x))) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 eps (*.f64 eps (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/48) (*.f64 1/2 eps)))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps x))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))
(fma.f64 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))
(fma.f64 x (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))
(fma.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (cos.f64 (*.f64 1/2 eps)) 3)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))))) (pow.f64 x 2))))
(+.f64 (fma.f64 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (*.f64 x x) (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)))))))
(fma.f64 x (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) (fma.f64 (*.f64 x x) (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))
(fma.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (cos.f64 (*.f64 1/2 eps)) 3)) (fma.f64 (*.f64 x x) (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) -3/2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))) x) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (*.f64 -1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))))) (pow.f64 x 2)))))
(+.f64 (fma.f64 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (fma.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) -4/3) (fma.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) (fma.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))))) (pow.f64 x 3) (*.f64 (*.f64 x x) (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))))))))
(+.f64 (fma.f64 x (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps)))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (fma.f64 (*.f64 x x) (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))) (*.f64 (pow.f64 x 3) (+.f64 (*.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) -4/3) (-.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -1/6) (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))))))))
(+.f64 (fma.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (cos.f64 (*.f64 1/2 eps)) 3)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) (*.f64 (*.f64 x x) (+.f64 (fma.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) -3/2))) (*.f64 x (+.f64 (+.f64 (pow.f64 (cos.f64 (*.f64 1/2 eps)) 3) (*.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) -7/6)) (*.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (cos.f64 (*.f64 1/2 eps))) -7/3))))))
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 x) 3)
(+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3))
(fma.f64 eps (*.f64 3/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 3))
(fma.f64 eps (*.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) 3/2) (pow.f64 (sin.f64 x) 3))
(fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (sin.f64 x) 2) 3/2)) (pow.f64 (sin.f64 x) 3))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 1/2 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x)))))) (+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3)))
(fma.f64 (*.f64 eps eps) (fma.f64 (sin.f64 x) (fma.f64 -1/4 (pow.f64 (sin.f64 x) 2) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (fma.f64 -1/8 (pow.f64 (sin.f64 x) 3) (*.f64 1/2 (*.f64 (sin.f64 x) (pow.f64 (cos.f64 x) 2))))) (fma.f64 eps (*.f64 3/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 3)))
(fma.f64 (*.f64 eps eps) (fma.f64 (sin.f64 x) (fma.f64 1/4 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (sin.f64 x) 2) -1/4)) (fma.f64 1/2 (*.f64 (sin.f64 x) (pow.f64 (cos.f64 x) 2)) (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)))) (fma.f64 eps (*.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) 3/2) (pow.f64 (sin.f64 x) 3)))
(fma.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/4 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))))) (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (sin.f64 x) 2) 3/2)) (pow.f64 (sin.f64 x) 3)))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 1/2 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x)))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/8 (*.f64 (cos.f64 x) (sin.f64 x))))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (*.f64 1/2 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))))) (pow.f64 (sin.f64 x) 3))))
(fma.f64 (*.f64 eps eps) (fma.f64 (sin.f64 x) (fma.f64 -1/4 (pow.f64 (sin.f64 x) 2) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (fma.f64 -1/8 (pow.f64 (sin.f64 x) 3) (*.f64 1/2 (*.f64 (sin.f64 x) (pow.f64 (cos.f64 x) 2))))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) (cos.f64 x)) -1/6) (fma.f64 -1/8 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 1/2 (cos.f64 x)) (fma.f64 -1/4 (pow.f64 (sin.f64 x) 2) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))))))) (fma.f64 eps (*.f64 3/2 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 3))))
(fma.f64 (*.f64 eps eps) (fma.f64 (sin.f64 x) (fma.f64 1/4 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (sin.f64 x) 2) -1/4)) (fma.f64 1/2 (*.f64 (sin.f64 x) (pow.f64 (cos.f64 x) 2)) (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)))) (fma.f64 (pow.f64 eps 3) (+.f64 (fma.f64 (*.f64 1/2 (cos.f64 x)) (fma.f64 1/4 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (sin.f64 x) 2) -1/4)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 (sin.f64 x) 2) -1/8))) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) -1/6))) (fma.f64 eps (*.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) 3/2) (pow.f64 (sin.f64 x) 3))))
(fma.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 3)) (*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/4 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))))) (fma.f64 (pow.f64 eps 3) (+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/8 (pow.f64 (sin.f64 x) 2)) (*.f64 1/2 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/4 (*.f64 1/4 (pow.f64 (cos.f64 x) 2)))))) (*.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) -3/16)) (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (sin.f64 x) 2) 3/2)) (pow.f64 (sin.f64 x) 3))))
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) 3)
(pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) 3)
(pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)
(*.f64 1/8 (pow.f64 eps 3))
(*.f64 (pow.f64 eps 3) 1/8)
(+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3)))
(fma.f64 -1/64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) 1/8))
(fma.f64 (pow.f64 eps 3) 1/8 (*.f64 -1/64 (pow.f64 eps 5)))
(+.f64 (*.f64 13/15360 (pow.f64 eps 7)) (+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3))))
(fma.f64 13/15360 (pow.f64 eps 7) (fma.f64 -1/64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) 1/8)))
(fma.f64 13/15360 (pow.f64 eps 7) (fma.f64 (pow.f64 eps 3) 1/8 (*.f64 -1/64 (pow.f64 eps 5))))
(+.f64 (*.f64 -41/1548288 (pow.f64 eps 9)) (+.f64 (*.f64 13/15360 (pow.f64 eps 7)) (+.f64 (*.f64 -1/64 (pow.f64 eps 5)) (*.f64 1/8 (pow.f64 eps 3)))))
(fma.f64 -41/1548288 (pow.f64 eps 9) (fma.f64 13/15360 (pow.f64 eps 7) (fma.f64 -1/64 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) 1/8))))
(fma.f64 -41/1548288 (pow.f64 eps 9) (fma.f64 13/15360 (pow.f64 eps 7) (fma.f64 (pow.f64 eps 3) 1/8 (*.f64 -1/64 (pow.f64 eps 5)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)

eval295.0ms (1.6%)

Compiler

Compiled 10336 to 7995 computations (22.6% saved)

prune229.0ms (1.2%)

Pruning

92 alts after pruning (84 fresh and 8 done)

PrunedKeptTotal
New52023543
Fresh226183
Picked101
Done189
Total54492636
Error
0.0b
Counts
636 → 92
Alt Table
Click to see full alt table
StatusErrorProgram
57.2b
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)
51.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
39.5b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))
13.7b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
26.1b
(-.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
39.5b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
39.1b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
39.0b
(log.f64 (/.f64 (exp.f64 (cos.f64 eps)) (exp.f64 (cos.f64 x))))
56.2b
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
26.5b
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 3)
32.3b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))) 2)) -2)
36.7b
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 3))
31.0b
(*.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
39.1b
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
56.2b
(cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2) 3))
26.1b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
33.2b
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) -2)
36.8b
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2)
57.1b
(log.f64 1)
39.7b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
33.2b
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
46.7b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
35.0b
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
39.3b
(-.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x))
39.2b
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x))))
50.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 1/2 eps)) -2)
56.2b
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
33.6b
(pow.f64 (*.f64 (cbrt.f64 -2) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))) 3)
31.6b
(-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
50.9b
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))) 3) (*.f64 1/8 (pow.f64 eps 3)))) -2)
37.9b
(*.f64 eps (neg.f64 (sin.f64 x)))
39.2b
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
49.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
56.2b
(-.f64 (+.f64 1 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 1)
0.3b
(*.f64 (*.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
51.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
39.6b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2)
39.1b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
15.2b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
31.6b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
26.1b
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
43.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
28.9b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2)
39.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 1))
46.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
56.1b
(sqrt.f64 (-.f64 (+.f64 1 (*.f64 4 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 4))) 1))
39.1b
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
48.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
26.1b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
56.2b
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 4) 4))
26.7b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))))) -2)
39.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 eps 1/2))))) -2)
39.7b
(log.f64 (-.f64 (+.f64 1 (exp.f64 (+.f64 (cos.f64 eps) -1))) 1))
39.5b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
26.8b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
43.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2)
19.7b
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x x) 1/2)) (cos.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 (+.f64 x x) 1/2)) (sin.f64 (*.f64 1/2 eps)))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3))) -2)
57.2b
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x)))))
39.6b
(log.f64 (+.f64 1 (expm1.f64 (+.f64 (cos.f64 eps) -1))))
36.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 1 eps)) 1/2))) -2)
37.9b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (cos.f64 (*.f64 1/2 x)))) -2)
39.4b
(+.f64 (cos.f64 eps) -1)
52.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
15.6b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
33.9b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
57.9b
(*.f64 1/2 (*.f64 eps eps))
31.4b
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))
45.7b
(*.f64 eps (fma.f64 -1/2 eps (neg.f64 x)))
56.2b
(sqrt.f64 (exp.f64 (log.f64 (*.f64 4 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 4)))))
39.0b
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))
45.7b
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2)))
40.6b
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x))
56.2b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
14.5b
(*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) (cbrt.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
56.2b
(log.f64 (exp.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))
51.1b
(*.f64 -1/2 (*.f64 eps eps))
38.3b
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
40.3b
(-.f64 (cos.f64 eps) (+.f64 1 (*.f64 x (sin.f64 eps))))
51.3b
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
33.0b
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps))))) 3)) -2)
0.3b
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
38.7b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (cos.f64 x)))
39.5b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x eps)))))))) -2)
39.1b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
39.9b
(log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) 3))
39.5b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
39.5b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
51.0b
(*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))
38.9b
(-.f64 (cos.f64 eps) (cos.f64 x))
26.1b
(fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
Compiler

Compiled 1395 to 1089 computations (21.9% saved)

regimes650.0ms (3.5%)

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

4 calls:

160.0ms
eps
109.0ms
x
105.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
95.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
0.3b1x
0.3b1eps
0.3b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
0.3b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 2442 to 1300 computations (46.8% saved)

regimes730.0ms (3.9%)

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

4 calls:

224.0ms
eps
168.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
155.0ms
x
125.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.7b2x
0.5b3eps
5.0b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
5.0b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1626 to 979 computations (39.8% saved)

bsearch226.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
116.0ms
0.002847402336945821
0.02154039506233686
108.0ms
-0.0019391995777601862
-0.001140205663377386
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes885.0ms (4.7%)

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

4 calls:

221.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
213.0ms
eps
198.0ms
x
155.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.7b2x
0.5b3eps
5.0b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
5.0b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1577 to 950 computations (39.8% saved)

bsearch100.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
49.0ms
0.002847402336945821
0.02154039506233686
50.0ms
-0.0019391995777601862
-0.001140205663377386
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes305.0ms (1.6%)

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

4 calls:

82.0ms
eps
73.0ms
x
48.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
45.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
13.7b1x
13.7b1eps
13.7b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
13.7b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1563 to 946 computations (39.5% saved)

regimes173.0ms (0.9%)

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

4 calls:

53.0ms
eps
49.0ms
x
30.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
30.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
17.7b3x
13.0b3eps
13.2b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
13.2b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 307 to 188 computations (38.8% saved)

bsearch107.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
54.0ms
1.1268120518731243e-6
0.002847402336945821
53.0ms
-0.9303548950018607
-0.0019391995777601862
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes163.0ms (0.9%)

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

4 calls:

63.0ms
eps
40.0ms
x
29.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
23.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
17.7b3x
17.8b3eps
19.7b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
19.7b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 236 to 146 computations (38.1% saved)

bsearch174.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
82.0ms
2.6799745731378967e-23
7.944157183205171e-20
92.0ms
-4.2274067724269265e-28
-1.3360840588821543e-36
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes139.0ms (0.7%)

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

4 calls:

48.0ms
eps
36.0ms
x
25.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
22.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
18.7b3x
17.8b3eps
19.5b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
19.5b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 176 to 117 computations (33.5% saved)

bsearch188.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
107.0ms
3.904703325838417e-111
5.355384035360862e-108
81.0ms
-1.1063543140823851e-53
-6.6328602300110235e-56
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes197.0ms (1.1%)

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

4 calls:

122.0ms
x
33.0ms
eps
20.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
18.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
22.1b7x
17.0b4eps
19.8b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
19.8b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 144 to 89 computations (38.2% saved)

bsearch339.0ms (1.8%)

Algorithm
binary-search
Steps
TimeLeftRight
68.0ms
1.1268120518731243e-6
0.002847402336945821
140.0ms
3.904703325838417e-111
5.355384035360862e-108
131.0ms
-0.001140205663377386
-1.906803960405498e-18
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes132.0ms (0.7%)

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

2 calls:

92.0ms
x
32.0ms
eps
Results
ErrorSegmentsBranch
22.1b7x
17.9b4eps
Compiler

Compiled 114 to 73 computations (36% saved)

bsearch238.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
61.0ms
1.1268120518731243e-6
0.002847402336945821
121.0ms
3.904703325838417e-111
5.355384035360862e-108
55.0ms
-0.001140205663377386
-1.906803960405498e-18
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes99.0ms (0.5%)

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

2 calls:

49.0ms
eps
47.0ms
x
Results
ErrorSegmentsBranch
22.1b7x
17.9b4eps
Compiler

Compiled 75 to 43 computations (42.7% saved)

bsearch477.0ms (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
52.0ms
1.1268120518731243e-6
0.002847402336945821
337.0ms
3.904703325838417e-111
5.355384035360862e-108
88.0ms
-0.001140205663377386
-1.906803960405498e-18
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes88.0ms (0.5%)

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

2 calls:

58.0ms
eps
27.0ms
x
Results
ErrorSegmentsBranch
23.3b5x
18.5b4eps
Compiler

Compiled 50 to 29 computations (42% saved)

bsearch275.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
57.0ms
1.1268120518731243e-6
0.002847402336945821
140.0ms
3.904703325838417e-111
5.355384035360862e-108
78.0ms
-0.001140205663377386
-1.906803960405498e-18
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes31.0ms (0.2%)

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

2 calls:

14.0ms
eps
13.0ms
x
Results
ErrorSegmentsBranch
37.9b3x
33.4b3eps
Compiler

Compiled 35 to 24 computations (31.4% saved)

bsearch160.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
105.0ms
1.1268120518731243e-6
0.002847402336945821
54.0ms
-0.001140205663377386
-1.906803960405498e-18
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes11.0ms (0.1%)

Accuracy

Total -7.1b remaining (-13.8%)

Threshold costs -7.1b (-13.8%)

Counts
5 → 1
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 eps eps))
(*.f64 -1/2 (*.f64 eps eps))
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)
(log.f64 1)
(log.f64 1)
Outputs
(*.f64 -1/2 (*.f64 eps eps))
Calls

2 calls:

5.0ms
eps
5.0ms
x
Results
ErrorSegmentsBranch
51.1b1x
51.1b1eps
Compiler

Compiled 31 to 21 computations (32.3% saved)

simplify36.0ms (0.2%)

Algorithm
egg-herbie
Rules
37×*-commutative_binary64
23×+-commutative_binary64
15×sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0110621
1166617
2201617
3219617
4228617
5230617
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(if (<=.f64 eps -4189945958452697/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 x -4713716064121781/11150372599265311570767859136324180752990208) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) (if (<=.f64 x 1139935113794119/42535295865117307932921825928971026432) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2)))
(if (<=.f64 eps -4772360528421301/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))
(if (<=.f64 eps -41080238405697/36028797018963968) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (-.f64 (cos.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 eps (fma.f64 -1/2 eps (neg.f64 x))) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1)))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 1/2 (*.f64 eps eps))
Outputs
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x)))) -2)
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (-.f64 x x)))) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 eps x)))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(if (<=.f64 eps -8942979579696945/4611686018427387904) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 820707846633157/288230376151711744) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (-.f64 x x)))) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 eps x)))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))))
(if (<=.f64 eps -4189945958452697/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -4189945958452697/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 x -4713716064121781/11150372599265311570767859136324180752990208) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) (if (<=.f64 x 1139935113794119/42535295865117307932921825928971026432) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2)))
(if (<=.f64 x -4713716064121781/11150372599265311570767859136324180752990208) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x))) (if (<=.f64 x 1139935113794119/42535295865117307932921825928971026432) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x)))))
(if (<=.f64 eps -4772360528421301/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))
(if (<=.f64 eps -4772360528421301/431359146674410236714672241392314090778194310760649159697657763987456) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))
(if (<=.f64 eps -41080238405697/36028797018963968) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (-.f64 (cos.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -41080238405697/36028797018963968) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (neg.f64 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (-.f64 (cos.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -41080238405697/36028797018963968) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (-.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 eps x)) (-.f64 (cos.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (+.f64 (neg.f64 (*.f64 eps x)) (*.f64 -1/2 (pow.f64 eps 2))) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (-.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 eps x)) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 eps (fma.f64 -1/2 eps (neg.f64 x))) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 5286353796916471/1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -41080238405697/36028797018963968) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 2660609733129607/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1)))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 1/2 (*.f64 eps eps))
Compiler

Compiled 430 to 280 computations (34.9% saved)

soundness0.0ms (0%)

end277.0ms (1.5%)

Compiler

Compiled 404 to 214 computations (47% saved)

Profiling

Loading profile data...