Details

Time bar (total: 21.5s)

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

sample5.7s (26.6%)

Results
2.5s3937×body1024valid
2.5s2189×body2048valid
478.0ms1381×body512valid
170.0ms746×body256valid
5.0msbody4096valid
Bogosity

preprocess46.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11722
22522
33822
45322
58122
614122
719922
828422
935522
1040722
1141122
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (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)

simplify23.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

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

eval1.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 9 to 6 computations (33.3% saved)

localize19.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 x)
1.0b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
2.5b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 20 to 6 computations (70% saved)

series12.0ms (0.1%)

Counts
3 → 52
Calls

15 calls:

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

rewrite134.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
0720
117420
2276220
Stop Event
node limit
Counts
3 → 211
Calls
Call 1
Inputs
(cos.f64 (+.f64 x eps))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(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)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 x))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 x))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 x)))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 x))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 x))) 2) 3) (cbrt.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 x) (cbrt.f64 (cos.f64 x))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 x) 2) (sqrt.f64 (cos.f64 x))) 1/3) (cbrt.f64 (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 x)) 1))))))

simplify146.0ms (0.7%)

Algorithm
egg-herbie
Rules
817×fma-neg_binary64
461×fma-def_binary64
393×associate-+l+_binary64
386×distribute-rgt-neg-out_binary64
351×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
081682
1222662
2599628
32574612
Stop Event
node limit
Counts
263 → 254
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))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
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 -1/2 (*.f64 x x))))
(fma.f64 (sin.f64 eps) (neg.f64 x) (*.f64 (fma.f64 -1/2 (*.f64 x x) 1) (cos.f64 eps)))
(fma.f64 (fma.f64 x (*.f64 x -1/2) 1) (cos.f64 eps) (*.f64 x (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 -1/2 (*.f64 x x))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))))
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x))) (*.f64 (fma.f64 -1/2 (*.f64 x x) 1) (cos.f64 eps)))
(fma.f64 (fma.f64 x (*.f64 x -1/2) 1) (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 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(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 x (neg.f64 (sin.f64 eps)) -1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 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 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 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 (*.f64 x 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 x (*.f64 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 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.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 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(-.f64 (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps)))) (*.f64 eps (sin.f64 x)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (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 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps)))) (*.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 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3))))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))) (*.f64 (sin.f64 x) (-.f64 eps (*.f64 1/6 (pow.f64 eps 3)))))
(-.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))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 x x)))
(fma.f64 -1/2 (*.f64 x x) 1)
(fma.f64 x (*.f64 x -1/2) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/2 (*.f64 x x))))
(fma.f64 x (*.f64 x -1/2) (fma.f64 1/24 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (fma.f64 1/24 (pow.f64 x 4) (fma.f64 x (*.f64 x -1/2) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 (fma.f64 x (*.f64 x -1/2) 1) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))))

eval134.0ms (0.6%)

Compiler

Compiled 4419 to 1391 computations (68.5% saved)

prune182.0ms (0.8%)

Pruning

41 alts after pruning (40 fresh and 1 done)

PrunedKeptTotal
New21440254
Fresh000
Picked011
Done000
Total21441255
Error
0.2b
Counts
255 → 41
Alt Table
Click to see full alt table
StatusErrorProgram
26.3b
(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)))))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
38.7b
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
54.8b
(-.f64 (cos.f64 x) (cos.f64 x))
45.3b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
38.6b
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
38.6b
(/.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)))
26.1b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
40.1b
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
25.6b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
38.6b
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
25.6b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.6b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) 1)
32.4b
(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)))))
38.8b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
25.6b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
32.4b
(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))))
26.1b
(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))))
54.7b
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
39.1b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
12.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
25.6b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
29.6b
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
38.0b
(-.f64 (cos.f64 eps) 1)
38.6b
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
13.9b
(*.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))))
26.3b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
38.0b
(-.f64 (cos.f64 eps) (cos.f64 x))
25.6b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.8b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
29.4b
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
38.6b
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
38.7b
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
38.6b
(+.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))))))
32.2b
(-.f64 (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))) (cos.f64 x))
38.7b
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
38.6b
(-.f64 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
36.1b
(*.f64 (sin.f64 x) (neg.f64 eps))
Compiler

Compiled 1219 to 806 computations (33.9% saved)

localize61.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
0.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)))
2.5b
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
Compiler

Compiled 88 to 34 computations (61.4% saved)

series28.0ms (0.1%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
3.0ms
eps
@0
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
2.0ms
eps
@inf
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))

rewrite123.0ms (0.6%)

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

Useful iterations: 1 (0.0ms)

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

simplify199.0ms (0.9%)

Algorithm
egg-herbie
Rules
862×fma-def_binary64
568×distribute-rgt-out_binary64
514×associate-*l*_binary64
499×associate-*r*_binary64
481×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

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

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 10 to 6 computations (40% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

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

rewrite44.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

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

simplify109.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(exp.f64 (cos.f64 x))
0.3b
(log.f64 (exp.f64 (cos.f64 x)))
2.5b
(cos.f64 (+.f64 x eps))
9.9b
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
Compiler

Compiled 29 to 8 computations (72.4% saved)

series4.0ms (0%)

Counts
3 → 40
Calls

12 calls:

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

rewrite104.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

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

simplify55.0ms (0.3%)

Algorithm
egg-herbie
Rules
616×fma-neg_binary64
471×distribute-rgt-neg-out_binary64
432×fma-def_binary64
401×distribute-lft-neg-out_binary64
375×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
085528
1233517
2616497
32743481
Stop Event
node limit
Counts
227 → 221
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))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(exp.f64 1)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (exp.f64 1))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (+.f64 (*.f64 1/6 (*.f64 (exp.f64 1) (pow.f64 x 4))) (exp.f64 1)))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (+.f64 (*.f64 -31/720 (*.f64 (exp.f64 1) (pow.f64 x 6))) (+.f64 (*.f64 1/6 (*.f64 (exp.f64 1) (pow.f64 x 4))) (exp.f64 1))))
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 x (neg.f64 (sin.f64 eps)) (+.f64 (cos.f64 eps) -1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 -1 (+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x))))))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) 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 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.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 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.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 (*.f64 -1/2 (cos.f64 x)) 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)))))
(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)) (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(fma.f64 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)) (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.f64 eps (sin.f64 x)))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3))))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))) (*.f64 (sin.f64 x) (-.f64 eps (*.f64 1/6 (pow.f64 eps 3)))))
(-.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))
1
(+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 x x)))
(fma.f64 -1/2 (*.f64 x x) 1)
(fma.f64 x (*.f64 x -1/2) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 1 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))))
(fma.f64 x (*.f64 x -1/2) (fma.f64 1/24 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 (fma.f64 1/24 (pow.f64 x 4) (*.f64 x (*.f64 x -1/2))) (fma.f64 -1/720 (pow.f64 x 6) 1))
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(cos.f64 x)
(exp.f64 1)
(E.f64)
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (exp.f64 1))
(fma.f64 -1/2 (*.f64 (*.f64 x x) (E.f64)) (E.f64))
(*.f64 (fma.f64 x (*.f64 x -1/2) 1) (E.f64))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (+.f64 (*.f64 1/6 (*.f64 (exp.f64 1) (pow.f64 x 4))) (exp.f64 1)))
(fma.f64 -1/2 (*.f64 (*.f64 x x) (E.f64)) (fma.f64 1/6 (*.f64 (pow.f64 x 4) (E.f64)) (E.f64)))
(fma.f64 1/6 (*.f64 (pow.f64 x 4) (E.f64)) (*.f64 (fma.f64 x (*.f64 x -1/2) 1) (E.f64)))
(*.f64 (E.f64) (+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 1/6 (pow.f64 x 4))))
(+.f64 (*.f64 -1/2 (*.f64 (exp.f64 1) (pow.f64 x 2))) (+.f64 (*.f64 -31/720 (*.f64 (exp.f64 1) (pow.f64 x 6))) (+.f64 (*.f64 1/6 (*.f64 (exp.f64 1) (pow.f64 x 4))) (exp.f64 1))))
(fma.f64 -1/2 (*.f64 (*.f64 x x) (E.f64)) (fma.f64 -31/720 (*.f64 (pow.f64 x 6) (E.f64)) (fma.f64 1/6 (*.f64 (pow.f64 x 4) (E.f64)) (E.f64))))
(+.f64 (*.f64 (fma.f64 x (*.f64 x -1/2) 1) (E.f64)) (*.f64 (E.f64) (+.f64 (*.f64 1/6 (pow.f64 x 4)) (*.f64 (pow.f64 x 6) -31/720))))
(fma.f64 (pow.f64 x 6) (*.f64 (E.f64) -31/720) (*.f64 (E.f64) (+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 1/6 (pow.f64 x 4)))))

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(log1p.f64 (cos.f64 (+.f64 x eps)))
0.5b
(-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1)
2.5b
(cos.f64 (+.f64 x eps))
10.6b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
Compiler

Compiled 44 to 13 computations (70.5% saved)

series188.0ms (0.9%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
68.0ms
eps
@-inf
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
34.0ms
eps
@inf
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
33.0ms
x
@-inf
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
29.0ms
x
@inf
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))
12.0ms
eps
@0
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x))

rewrite168.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
518×log-prod_binary64
487×fma-def_binary64
342×pow-prod-down_binary64
333×fma-neg_binary64
308×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify134.0ms (0.6%)

Algorithm
egg-herbie
Rules
779×distribute-rgt-in_binary64
773×distribute-lft-in_binary64
574×times-frac_binary64
475×associate-/l*_binary64
314×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01912665
16462394
226812103
Stop Event
node limit
Counts
321 → 305
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 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (+.f64 (cos.f64 eps) 1))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (+.f64 (cos.f64 eps) 1))) (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 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))) (sin.f64 x)) (+.f64 (cos.f64 x) 1))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 -3 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -6 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 (cos.f64 x) 1) 4))) (*.f64 -12 (/.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (pow.f64 (+.f64 (cos.f64 x) 1) 3)))))))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 (cos.f64 x) 1) 4))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/8 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))) (*.f64 -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))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 2))))))
(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 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))))))
(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)))
(log.f64 (+.f64 (cos.f64 eps) 1))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (pow.f64 x 3))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 (cos.f64 x) 1))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))))) (+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 x (neg.f64 (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (+.f64 (cos.f64 eps) 1))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (+.f64 (cos.f64 eps) 1) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))))) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (+.f64 (cos.f64 eps) 1) (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))))) 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)))
(+.f64 (*.f64 x (-.f64 (*.f64 (fma.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) -1/2) (*.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) 0)) 1/2) x) (sin.f64 eps))) (+.f64 (cos.f64 eps) -1))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (+.f64 (cos.f64 eps) 1))) (pow.f64 x 2))))) 1)
(+.f64 (fma.f64 (fma.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (fma.f64 -1/2 (/.f64 (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))) (/.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3)) (+.f64 (cos.f64 eps) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (+.f64 (cos.f64 eps) 1) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))))) (*.f64 x x))))) -1)
(+.f64 -1 (+.f64 (-.f64 (*.f64 x (*.f64 x (fma.f64 (+.f64 (cos.f64 eps) 1) (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))))) 1/2))) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) (tan.f64 (/.f64 eps 2)))) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 eps)) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2)))) (+.f64 (cos.f64 eps) 1)) (sin.f64 eps)) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) -1/6))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3)) (cos.f64 eps))))
(+.f64 -1 (+.f64 (*.f64 x (-.f64 (*.f64 (fma.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) -1/2) (*.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) 0)) 1/2) x) (sin.f64 eps))) (fma.f64 (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) (tan.f64 (/.f64 eps 2)))) (fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (-.f64 (/.f64 (neg.f64 (cos.f64 eps)) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))))) (*.f64 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) -1/6))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3)) (cos.f64 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 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 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))))) (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 eps (*.f64 eps (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))))))))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 0)) (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))))) (fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (/.f64 (sin.f64 x) (/.f64 (+.f64 1 (cos.f64 x)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)))))) (*.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x))))))))) (*.f64 (neg.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (+.f64 (*.f64 eps (*.f64 eps (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))))) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 2)) (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))))) (*.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))))))))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 0)) (*.f64 (fma.f64 -1/6 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2)))) (*.f64 -1/2 (-.f64 (/.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (/.f64 (+.f64 1 (cos.f64 x)) (sin.f64 x))) (pow.f64 (tan.f64 (/.f64 x 2)) 3))))) eps)))) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))) (sin.f64 x)) (+.f64 (cos.f64 x) 1))) (+.f64 (*.f64 1/24 (+.f64 (*.f64 4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 -3 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -6 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 (cos.f64 x) 1) 4))) (*.f64 -12 (/.f64 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (pow.f64 (+.f64 (cos.f64 x) 1) 3)))))))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 (cos.f64 x) 1) 4))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/8 (pow.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (pow.f64 eps 4) (fma.f64 -1/6 (/.f64 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x))))) (/.f64 (+.f64 1 (cos.f64 x)) (sin.f64 x))) (fma.f64 1/24 (fma.f64 4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (+.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (fma.f64 -3 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -6 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 1 (cos.f64 x)) 4)) (/.f64 (*.f64 -12 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (pow.f64 (+.f64 1 (cos.f64 x)) 3)))))) (fma.f64 1/24 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 1 (cos.f64 x)) 4)) (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (/.f64 (pow.f64 (+.f64 1 (cos.f64 x)) 2) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)))))) (*.f64 1/8 (pow.f64 (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)))) 2))))))) (fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))))) (fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (/.f64 (sin.f64 x) (/.f64 (+.f64 1 (cos.f64 x)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)))))) (*.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x))))))))) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (pow.f64 eps 4) (fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))) (+.f64 1 (cos.f64 x))) (sin.f64 x)) (fma.f64 1/24 (+.f64 (fma.f64 -3 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -6 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 1 (cos.f64 x)) 4)) (/.f64 -12 (/.f64 (pow.f64 (+.f64 1 (cos.f64 x)) 3) (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 4 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))))) (fma.f64 1/24 (/.f64 (pow.f64 (sin.f64 x) 4) (pow.f64 (+.f64 1 (cos.f64 x)) 4)) (fma.f64 1/4 (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))))) (*.f64 1/8 (pow.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)))) 2))))))) (-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (+.f64 (*.f64 eps (*.f64 eps (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))))) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 2)) (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))))) (*.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))))))))) (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (+.f64 (*.f64 (pow.f64 eps 4) (fma.f64 -1/6 (*.f64 (tan.f64 (/.f64 x 2)) (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2))))) (fma.f64 1/24 (+.f64 (fma.f64 -3 (/.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -12 (*.f64 (/.f64 (cos.f64 x) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (pow.f64 (sin.f64 x) 2)) (/.f64 -6 (/.f64 (pow.f64 (+.f64 1 (cos.f64 x)) 4) (pow.f64 (sin.f64 x) 4))))) (fma.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 4 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))))) (fma.f64 1/24 (*.f64 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2))) (fma.f64 1/4 (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))))) (*.f64 1/8 (pow.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)))) 2))))))) (*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 0)) (*.f64 (fma.f64 -1/6 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2)))) (*.f64 -1/2 (-.f64 (/.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (/.f64 (+.f64 1 (cos.f64 x)) (sin.f64 x))) (pow.f64 (tan.f64 (/.f64 x 2)) 3))))) eps))))) (*.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 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))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (neg.f64 (*.f64 x (sin.f64 eps))))
(-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps)))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 2)))))
(+.f64 (cos.f64 eps) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (*.f64 x x)))))
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))))) (*.f64 x (*.f64 x (+.f64 (cos.f64 eps) 1)))) (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 0 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2)))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (+.f64 (cos.f64 eps) 1))) x) (sin.f64 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 2))))))
(fma.f64 (fma.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (fma.f64 -1/2 (/.f64 (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))) (/.f64 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3)) (+.f64 (cos.f64 eps) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))))) (*.f64 (+.f64 (cos.f64 eps) 1) (*.f64 x x))))))
(+.f64 (-.f64 (*.f64 (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))))) (*.f64 x (*.f64 x (+.f64 (cos.f64 eps) 1)))) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) (tan.f64 (/.f64 eps 2)))) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 eps)) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2)))) (+.f64 (cos.f64 eps) 1)) (sin.f64 eps)) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) -1/6))) (*.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3)) (cos.f64 eps)))
(+.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (*.f64 (+.f64 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) -1/2) (*.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) 0)) (*.f64 x x)) (*.f64 (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) (tan.f64 (/.f64 eps 2)))) (fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 eps 2)) (-.f64 (/.f64 (neg.f64 (cos.f64 eps)) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))))) (*.f64 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) -1/6))) (pow.f64 x 3)))))
(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 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))))) (+.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x))))
(fma.f64 (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))) (-.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))))
(-.f64 (fma.f64 (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 eps eps)) (+.f64 (*.f64 -1/2 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 0)) (cos.f64 x)) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (*.f64 1/2 (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (+.f64 (cos.f64 x) 1) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2))))) (+.f64 (cos.f64 x) 1))) (*.f64 1/6 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1))))))))))))
(fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))))) (+.f64 (cos.f64 x) (fma.f64 (+.f64 1 (cos.f64 x)) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (/.f64 (sin.f64 x) (/.f64 (+.f64 1 (cos.f64 x)) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2)))))) (*.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x))))))))) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(+.f64 (cos.f64 x) (-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (+.f64 (*.f64 eps (*.f64 eps (fma.f64 1/2 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))))) (*.f64 (pow.f64 eps 3) (fma.f64 -1/6 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 2)) (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))))) (*.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))))))))) (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (-.f64 (*.f64 (+.f64 1 (cos.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) 0)) (*.f64 (fma.f64 -1/6 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (fma.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2)))) (*.f64 -1/2 (-.f64 (/.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (/.f64 (+.f64 1 (cos.f64 x)) (sin.f64 x))) (pow.f64 (tan.f64 (/.f64 x 2)) 3))))) eps)))) (*.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 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))
(log.f64 (+.f64 (cos.f64 eps) 1))
(log1p.f64 (cos.f64 eps))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (/.f64 (neg.f64 (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1)))
(-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 (tan.f64 (/.f64 eps 2)) x))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1)))))
(fma.f64 1/2 (*.f64 (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (*.f64 x x)) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (/.f64 (neg.f64 (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1))))
(-.f64 (fma.f64 (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)))) (*.f64 x x) (log1p.f64 (cos.f64 eps))) (*.f64 (tan.f64 (/.f64 eps 2)) x))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (pow.f64 x 3))))))
(fma.f64 1/2 (*.f64 (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (*.f64 x x)) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (fma.f64 -1 (/.f64 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) 1)) (*.f64 1/6 (*.f64 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (pow.f64 x 3))))))
(+.f64 (-.f64 (fma.f64 (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)))) (*.f64 x x) (log1p.f64 (cos.f64 eps))) (*.f64 (tan.f64 (/.f64 eps 2)) x)) (*.f64 1/6 (*.f64 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) (tan.f64 (/.f64 eps 2)))) (pow.f64 x 3))))
(+.f64 (-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 (tan.f64 (/.f64 eps 2)) x)) (*.f64 (*.f64 x x) (+.f64 (*.f64 (*.f64 1/6 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) (tan.f64 (/.f64 eps 2))))) x) (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 (cos.f64 x) 1))
(log.f64 (+.f64 1 (cos.f64 x)))
(log1p.f64 (cos.f64 x))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x))))
(-.f64 (log1p.f64 (cos.f64 x)) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x)))
(-.f64 (log1p.f64 (cos.f64 x)) (*.f64 (tan.f64 (/.f64 x 2)) eps))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1)))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x)))))
(+.f64 (log1p.f64 (cos.f64 x)) (-.f64 (*.f64 eps (*.f64 eps (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))))))) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x))))
(+.f64 (log1p.f64 (cos.f64 x)) (fma.f64 eps (*.f64 eps (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))) (neg.f64 (*.f64 (tan.f64 (/.f64 x 2)) eps))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))))) (+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x)))))) (+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (neg.f64 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x))))))
(+.f64 (-.f64 (*.f64 eps (*.f64 eps (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))))))) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x))) (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))) (log1p.f64 (cos.f64 x))))
(+.f64 (fma.f64 eps (*.f64 eps (*.f64 -1/2 (+.f64 (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2))) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))))) (neg.f64 (*.f64 (tan.f64 (/.f64 x 2)) eps))) (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (tan.f64 (/.f64 x 2)))) (log1p.f64 (cos.f64 x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))

localize34.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 x)
0.1b
(*.f64 (cos.f64 x) (cos.f64 eps))
0.1b
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
1.8b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
Compiler

Compiled 48 to 12 computations (75% saved)

series18.0ms (0.1%)

Counts
3 → 68
Calls

18 calls:

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

rewrite160.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
772×prod-diff_binary64
509×log-prod_binary64
326×pow-prod-down_binary64
292×pow2_binary64
238×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify126.0ms (0.6%)

Algorithm
egg-herbie
Rules
568×fma-def_binary64
439×distribute-rgt-neg-in_binary64
435×associate-+l+_binary64
416×unswap-sqr_binary64
398×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0961178
12721089
27931037
329291019
462391019
Stop Event
node limit
Counts
246 → 226
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)))
(+.f64 (+.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 (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 (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) (-.f64 (*.f64 1/6 (pow.f64 x 3)) 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 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1)))
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x) -1)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 1/24 (pow.f64 eps 4)))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/2)))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 (cos.f64 x) (*.f64 eps (+.f64 (*.f64 (pow.f64 eps 3) 1/24) (*.f64 eps -1/2)))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (*.f64 x (sin.f64 eps)))
(fma.f64 x (sin.f64 eps) 1)
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x))))
(+.f64 1 (fma.f64 x (sin.f64 eps) (*.f64 -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))
(fma.f64 (sin.f64 eps) (*.f64 (pow.f64 x 3) -1/6) (fma.f64 x (sin.f64 eps) (fma.f64 x (*.f64 x -1/2) 1)))
(+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(fma.f64 eps (sin.f64 x) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))
(fma.f64 eps (sin.f64 x) (fma.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6 (cos.f64 x)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (+.f64 (*.f64 (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)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))))
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x))))
(fma.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 x x) (cos.f64 eps))
(*.f64 (fma.f64 x (*.f64 x -1/2) 1) (cos.f64 eps))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(fma.f64 (cos.f64 eps) (*.f64 1/24 (pow.f64 x 4)) (*.f64 (fma.f64 x (*.f64 x -1/2) 1) (cos.f64 eps)))
(*.f64 (cos.f64 eps) (+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(fma.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6)) (+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))) (fma.f64 (*.f64 (cos.f64 eps) -1/720) (pow.f64 x 6) (cos.f64 eps)))
(+.f64 (*.f64 (fma.f64 x (*.f64 x -1/2) 1) (cos.f64 eps)) (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
(fma.f64 (cos.f64 eps) (*.f64 -1/720 (pow.f64 x 6)) (*.f64 (cos.f64 eps) (+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))
(*.f64 (cos.f64 x) (fma.f64 (*.f64 eps -1/2) eps 1))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 (*.f64 eps -1/2) eps 1)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (fma.f64 -1/720 (*.f64 (cos.f64 x) (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 -1/720 (pow.f64 eps 6)))) (fma.f64 (*.f64 1/24 (pow.f64 eps 4)) (cos.f64 x) (cos.f64 x)))
(fma.f64 (fma.f64 1/24 (pow.f64 eps 4) 1) (cos.f64 x) (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))

eval1.5s (7.2%)

Compiler

Compiled 29854 to 11840 computations (60.3% saved)

prune686.0ms (3.2%)

Pruning

64 alts after pruning (61 fresh and 3 done)

PrunedKeptTotal
New1217521269
Fresh26935
Picked101
Done235
Total1246641310
Error
0.1b
Counts
1310 → 64
Alt Table
Click to see full alt table
StatusErrorProgram
26.3b
(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)))))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
38.2b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
25.9b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) 1) (cos.f64 x))
54.8b
(-.f64 (cos.f64 x) (cos.f64 x))
38.6b
(-.f64 (cos.f64 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
38.6b
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
46.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
45.3b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
38.6b
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
31.4b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
51.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
28.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))) -2)
12.6b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
38.3b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
29.4b
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
38.2b
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
25.5b
(fma.f64 1 (*.f64 (log1p.f64 (expm1.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
43.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
35.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
38.1b
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
37.8b
(*.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)
25.6b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
25.6b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
36.1b
(*.f64 (sin.f64 x) (neg.f64 eps))
31.9b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
42.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
26.3b
(fma.f64 1 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.8b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
37.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))))) -2)
32.1b
(fma.f64 1 (*.f64 (exp.f64 (log.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
12.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
25.6b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
31.7b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
38.0b
(-.f64 (cos.f64 eps) 1)
38.1b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
38.0b
(-.f64 (cos.f64 eps) (cos.f64 x))
38.1b
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
13.9b
(*.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))))
41.0b
(*.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)
48.5b
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
37.4b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
53.7b
(*.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)
38.0b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
48.6b
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
12.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
25.9b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (log.f64 (exp.f64 (cos.f64 x))))
38.0b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
29.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
31.4b
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
54.1b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
48.2b
(*.f64 -1/2 (*.f64 eps eps))
39.1b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) 1)
31.4b
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
38.7b
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
36.3b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
53.3b
(*.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)
38.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
38.7b
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
Compiler

Compiled 1956 to 1484 computations (24.1% saved)

localize103.0ms (0.5%)

Local error

Found 4 expressions with local error:

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

Compiled 64 to 47 computations (26.6% saved)

series15.0ms (0.1%)

Counts
4 → 60
Calls

21 calls:

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

rewrite149.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
709×log-prod_binary64
455×fma-def_binary64
370×pow2_binary64
257×pow1/3_binary64
257×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01361
128261
2373355
Stop Event
node limit
Counts
4 → 94
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)))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(sin.f64 (*.f64 1/2 eps))
Outputs
((#(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 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2)))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (*.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 2)) (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 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (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 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps)))) 1/2)))) (#(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 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps)))))))) (#(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 +.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 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.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 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.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 (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 (/.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) 2) (/.f64 (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) 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 1/2 (+.f64 (fma.f64 x 2 eps) eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) -2)))) (#(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 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 2) 1/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 (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 pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 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 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) -1)))) (#(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 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 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 cbrt.f64 (pow.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 cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 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 (*.f64 1/2 (fma.f64 x 2 eps))) 3)))))) (#(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 (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 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (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))) (*.f64 -2 (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))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (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))) (*.f64 -2 (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))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))) 2)) (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))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.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 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 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))))))

simplify156.0ms (0.7%)

Algorithm
egg-herbie
Rules
989×fma-def_binary64
540×distribute-rgt-out_binary64
476×associate-*l*_binary64
429×distribute-lft-out_binary64
425×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01261401
13751287
210981134
340781102
477791102
Stop Event
node limit
Counts
154 → 155
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 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))
(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 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -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 -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 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.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))))
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 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (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) (fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3))) (fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (sin.f64 x)))
(fma.f64 (cos.f64 x) (fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (sin.f64 x)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2))))
(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 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2))))
(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 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2))))
(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 -1 eps) (*.f64 -2 x))))
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2))))
(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)))
(fma.f64 x (cos.f64 (*.f64 eps -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 -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 (*.f64 -1/2 (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 eps -1/2)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 x (cos.f64 (*.f64 eps -1/2)) (*.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 (*.f64 -1/2 (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 eps -1/2)) (fma.f64 (cos.f64 (*.f64 eps -1/2)) (*.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 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.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 -1 eps (*.f64 x -2))))
(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 -1 eps (*.f64 x -2))))
(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 -1 eps (*.f64 x -2))))
(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 -1 eps (*.f64 x -2))))
(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 (*.f64 eps eps) (*.f64 (cos.f64 x) 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 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.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 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 -1 eps) (*.f64 -2 x)))))
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 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 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -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 -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 -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 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 eps -1/2))) (*.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 x (cos.f64 (*.f64 eps -1/2)) (*.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 -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 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (sin.f64 (*.f64 1/2 eps)))) (*.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 x (*.f64 x -1/2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (fma.f64 (cos.f64 (*.f64 eps -1/2)) (*.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 eps -1/2)) (+.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 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 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 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.f64 (sin.f64 x) eps))
(-.f64 (*.f64 eps (*.f64 (*.f64 eps (cos.f64 x)) -1/2)) (*.f64 (sin.f64 x) eps))
(neg.f64 (*.f64 eps (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 (sin.f64 x) -1/12) (*.f64 (pow.f64 eps 3) -2)) (*.f64 (sin.f64 x) eps)))
(-.f64 (fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6))) (*.f64 (sin.f64 x) eps))
(-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12)))))
(+.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) -1/12) (*.f64 (pow.f64 eps 3) -2)) (*.f64 (sin.f64 x) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 4) 1/24) (*.f64 (*.f64 eps eps) -1/2))))
(-.f64 (fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6))) (*.f64 (sin.f64 x) eps))
(fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 (*.f64 (pow.f64 eps 3) -2) -1/12) eps)))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(*.f64 -2 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps)))))))
(+.f64 (*.f64 -2 (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x))))
(fma.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 eps -1/2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x (*.f64 (cos.f64 (*.f64 eps -1/2)) -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 -2 (*.f64 x x)))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))))
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))))))))
(+.f64 (fma.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x))))
(fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps -1/2))) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x (cos.f64 (*.f64 eps -1/2))) (+.f64 (*.f64 (*.f64 x x) 1/3) -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 -2 (*.f64 x x)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 1/2 eps)
(+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))
(fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps))
(fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3)))
(+.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 1/2 eps)))
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3))))
(fma.f64 1/2 eps (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/3840 (pow.f64 eps 5))))
(+.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 1/2 eps))))
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 1/2 eps (*.f64 -1/645120 (pow.f64 eps 7)))))
(fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 1/2 eps (*.f64 -1/645120 (pow.f64 eps 7)))))

localize9.0ms (0%)

Compiler

Compiled 12 to 6 computations (50% saved)

localize67.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 eps (*.f64 eps eps)))
0.2b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2)))
3.9b
(sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))
28.4b
(/.f64 eps (*.f64 eps eps))
Compiler

Compiled 104 to 45 computations (56.7% saved)

series10.0ms (0%)

Counts
4 → 60
Calls

15 calls:

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

rewrite135.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
497×log-prod_binary64
402×fma-def_binary64
275×pow2_binary64
254×fma-neg_binary64
188×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify145.0ms (0.7%)

Algorithm
egg-herbie
Rules
781×distribute-lft-out_binary64
761×distribute-rgt-out_binary64
612×associate-*l*_binary64
590×fma-def_binary64
474×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046416
1115416
2262416
3801416
43516416
56053416
66667416
77128416
87688416
Stop Event
node limit
Counts
266 → 227
Calls
Call 1
Inputs
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 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)
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
Outputs
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 eps)
(/.f64 1 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 1/3840 (pow.f64 eps 5) (fma.f64 eps 1/2 (*.f64 -1/48 (pow.f64 eps 3))))
(fma.f64 eps 1/2 (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/3840 (pow.f64 eps 5))))
(+.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 -1/48 (pow.f64 eps 3) (fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 eps 1/2 (*.f64 -1/645120 (pow.f64 eps 7)))))
(fma.f64 eps (fma.f64 eps (*.f64 eps -1/48) 1/2) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/645120 (pow.f64 eps 7))))
(fma.f64 eps 1/2 (fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/645120 (pow.f64 eps 7)))))
(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 1/4 (*.f64 eps eps)))
(fma.f64 eps (*.f64 eps 1/4) (*.f64 -1/48 (pow.f64 eps 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 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/48) 1/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)))))
(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 1/4 (*.f64 eps eps) (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 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 eps (*.f64 eps 1/4) (fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) -1/80640 -1/48) (*.f64 1/1440 (pow.f64 eps 6))))
(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)
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps

localize54.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 (*.f64 1/2 eps))
0.0b
(exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
0.3b
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
1.7b
(log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
Compiler

Compiled 44 to 37 computations (15.9% saved)

series5.0ms (0%)

Counts
3 → 20
Calls

9 calls:

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

rewrite120.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
644×pow1_binary64
593×add-log-exp_binary64
593×log1p-expm1-u_binary64
593×expm1-log1p-u_binary64
580×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify109.0ms (0.5%)

Algorithm
egg-herbie
Rules
624×distribute-rgt-out_binary64
614×distribute-lft-out_binary64
518×fma-def_binary64
493×*-commutative_binary64
483×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
039262
192260
2205258
3646258
42858258
55791258
66234258
76816258
87669258
Stop Event
node limit
Counts
84 → 60
Calls
Call 1
Inputs
(*.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/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)))))
1
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) 1)
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 1 (*.f64 1/96 (pow.f64 eps 4))))
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 1 (+.f64 (*.f64 1/96 (pow.f64 eps 4)) (*.f64 -11/5760 (pow.f64 eps 6)))))
Outputs
(*.f64 1/4 (pow.f64 eps 2))
(*.f64 1/4 (*.f64 eps eps))
(+.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 1/4 (*.f64 eps eps)))
(*.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 1/4 (*.f64 eps eps) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/48 (pow.f64 eps 4))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/48) 1/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)))))
(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 1/4 (*.f64 eps eps) (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/4 (*.f64 eps eps) (fma.f64 -1/80640 (pow.f64 eps 8) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/48 (pow.f64 eps 4)))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) -1/80640 -1/48) (*.f64 1/1440 (pow.f64 eps 6))))
(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/4 (pow.f64 eps 2))
(*.f64 1/4 (*.f64 eps eps))
(+.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 1/4 (*.f64 eps eps)))
(*.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 1/4 (*.f64 eps eps) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/48 (pow.f64 eps 4))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/48) 1/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)))))
(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 1/4 (*.f64 eps eps) (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/4 (*.f64 eps eps) (fma.f64 -1/80640 (pow.f64 eps 8) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/48 (pow.f64 eps 4)))))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) -1/80640 -1/48) (*.f64 1/1440 (pow.f64 eps 6))))
1
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) 1)
(fma.f64 1/4 (*.f64 eps eps) 1)
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 1 (*.f64 1/96 (pow.f64 eps 4))))
(+.f64 (fma.f64 1/4 (*.f64 eps eps) 1) (*.f64 (pow.f64 eps 4) 1/96))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/96 1))
(fma.f64 (pow.f64 eps 4) 1/96 (fma.f64 1/4 (*.f64 eps eps) 1))
(fma.f64 (*.f64 eps eps) (fma.f64 (*.f64 eps eps) 1/96 1/4) 1)
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (+.f64 1 (+.f64 (*.f64 1/96 (pow.f64 eps 4)) (*.f64 -11/5760 (pow.f64 eps 6)))))
(+.f64 (fma.f64 1/4 (*.f64 eps eps) 1) (fma.f64 1/96 (pow.f64 eps 4) (*.f64 (pow.f64 eps 6) -11/5760)))
(+.f64 (fma.f64 1/4 (*.f64 eps eps) 1) (fma.f64 (pow.f64 eps 4) 1/96 (*.f64 (pow.f64 eps 6) -11/5760)))
(fma.f64 1/4 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/96 (fma.f64 (pow.f64 eps 6) -11/5760 1)))
(fma.f64 (pow.f64 eps 4) 1/96 (fma.f64 (pow.f64 eps 6) -11/5760 (fma.f64 1/4 (*.f64 eps eps) 1)))

localize54.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
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)))
1.0b
(cbrt.f64 -2)
2.5b
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
Compiler

Compiled 98 to 44 computations (55.1% saved)

series0.0ms (0%)

Counts
1 → 0

rewrite85.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
569×fma-def_binary64
367×expm1-udef_binary64
366×log1p-udef_binary64
312×fma-neg_binary64
228×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
1593
25973
359103
Stop Event
node limit
Counts
1 → 45
Calls
Call 1
Inputs
(cbrt.f64 -2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cbrt.f64 -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 -2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 -2)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cbrt.f64 -2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 -2)) (cbrt.f64 (cbrt.f64 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 4)) (cbrt.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/6) (pow.f64 -2 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 4))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 -2))) (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 16))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 4))) (cbrt.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 -2) 1/6) (*.f64 (pow.f64 (cbrt.f64 -2) 1/6) (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/12) (pow.f64 -2 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/12) (*.f64 (pow.f64 -2 1/12) (pow.f64 -2 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/4) (pow.f64 -2 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 -2)) 5)) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 -2 1/6) (cbrt.f64 (cbrt.f64 -2))) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 -2)) (cbrt.f64 (cbrt.f64 (cbrt.f64 16)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 4)) (cbrt.f64 (cbrt.f64 (cbrt.f64 4)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 4)) (pow.f64 (cbrt.f64 -2) 1/6)) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (cbrt.f64 -2) 1) 3) 1) (fma.f64 (+.f64 (cbrt.f64 -2) 1) (+.f64 (cbrt.f64 -2) 1) (+.f64 1 (+.f64 (cbrt.f64 -2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (cbrt.f64 -2) 1) (+.f64 (cbrt.f64 -2) 1) -1) (+.f64 (+.f64 (cbrt.f64 -2) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 -2 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 4 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 -2 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 -2)))) (sqrt.f64 (log.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 -2))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 4))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 -2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cbrt.f64 -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cbrt.f64 -2) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (+.f64 (cbrt.f64 -2) 1)) (cbrt.f64 (+.f64 (cbrt.f64 -2) 1))) (cbrt.f64 (+.f64 (cbrt.f64 -2) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (pow.f64 -2 1/6)) (hypot.f64 1 (pow.f64 -2 1/6)) -1)))))

simplify8.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
45 → 45
Calls
Call 1
Inputs
Outputs

eval465.0ms (2.2%)

Compiler

Compiled 16565 to 11385 computations (31.3% saved)

prune319.0ms (1.5%)

Pruning

83 alts after pruning (77 fresh and 6 done)

PrunedKeptTotal
New70244746
Fresh233356
Picked011
Done257
Total72783810
Error
0.0b
Counts
810 → 83
Alt Table
Click to see full alt table
StatusErrorProgram
26.3b
(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)))))
15.8b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
48.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
38.2b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
35.0b
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2)
25.9b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) 1) (cos.f64 x))
31.4b
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
23.1b
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
38.6b
(-.f64 (cos.f64 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
45.3b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
23.3b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))) -2)
46.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
0.4b
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
40.8b
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
47.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
35.6b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
12.6b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
38.3b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
29.4b
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
25.5b
(fma.f64 1 (*.f64 (log1p.f64 (expm1.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
51.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
33.3b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 1 eps)) 1/2))) -2)
38.1b
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
48.5b
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)
25.6b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
42.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
37.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))))) -2)
25.6b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
13.3b
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3)
26.3b
(fma.f64 1 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.8b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
43.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
28.7b
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
32.1b
(fma.f64 1 (*.f64 (exp.f64 (log.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
12.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
43.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
54.8b
(*.f64 (log.f64 1) -2)
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
31.7b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
38.0b
(-.f64 (cos.f64 eps) 1)
38.1b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
32.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
51.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
48.2b
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
13.9b
(*.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))))
27.8b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
38.0b
(-.f64 (cos.f64 eps) (cos.f64 x))
48.5b
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
37.4b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
38.0b
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
29.2b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
29.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -2)
53.7b
(*.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)
38.0b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
48.6b
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
12.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
52.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
53.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
38.0b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
38.2b
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
38.1b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
54.1b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
38.4b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
36.1b
(*.f64 (sin.f64 x) (neg.f64 eps))
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
48.2b
(*.f64 -1/2 (*.f64 eps eps))
32.1b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
38.1b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
39.1b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) 1)
36.1b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
21.7b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 2) -2)
35.5b
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
38.7b
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
36.3b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
54.7b
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
13.3b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
38.7b
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
13.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 3) -2)
Compiler

Compiled 2676 to 2119 computations (20.8% saved)

localize147.0ms (0.7%)

Local error

Found 4 expressions with local error:

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

Compiled 141 to 114 computations (19.1% saved)

series21.0ms (0.1%)

Counts
4 → 96
Calls

24 calls:

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

rewrite150.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
796×log-prod_binary64
591×fma-def_binary64
286×expm1-udef_binary64
286×log1p-udef_binary64
284×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify392.0ms (1.8%)

Algorithm
egg-herbie
Rules
574×distribute-rgt-out_binary64
496×distribute-lft-out_binary64
464×associate-*l*_binary64
442×associate-*r*_binary64
424×sqr-pow_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01262059
13672026
211081943
330851903
453211903
564881903
667221903
770121903
873641903
978021903
Stop Event
node limit
Counts
231 → 198
Calls
Call 1
Inputs
(*.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 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (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))
(+.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 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 1/2 (*.f64 eps (cos.f64 x)))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x))))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (cos.f64 x)))))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (*.f64 -1/645120 (*.f64 (pow.f64 eps 7) (cos.f64 x))))))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(sin.f64 x)
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/384 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/46080 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/384 (*.f64 (pow.f64 eps 4) (sin.f64 x))))))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 (*.f64 1/2 eps)) x)
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(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))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 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))))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
Outputs
(*.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 (*.f64 eps eps) (cos.f64 x)) (*.f64 (*.f64 1/2 eps) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(*.f64 eps (+.f64 (*.f64 (cos.f64 x) (*.f64 eps 1/4)) (*.f64 1/2 (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)))))
(fma.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 (*.f64 1/2 eps) (sin.f64 x))))
(fma.f64 1/4 (*.f64 (*.f64 eps 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 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))
(*.f64 eps (+.f64 (*.f64 eps (*.f64 1/4 (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) -1/12) 1/2))))
(+.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 (*.f64 1/2 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/2 (*.f64 eps (sin.f64 x)) (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4))))))
(+.f64 (fma.f64 1/4 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))) (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4))))
(+.f64 (*.f64 eps (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) -1/12) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 1/4 (*.f64 eps eps)))))
(+.f64 (*.f64 eps (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) -1/12) 1/2))) (*.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) (+.f64 1/4 (*.f64 (*.f64 eps eps) -1/48)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 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 -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 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 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (*.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 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 -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 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/2 (*.f64 x (*.f64 x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(+.f64 (*.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))))
(*.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 x (*.f64 -1/6 (pow.f64 x 3))))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))))
(*.f64 1/2 (*.f64 eps (cos.f64 x)))
(*.f64 (*.f64 1/2 eps) (cos.f64 x))
(*.f64 (cos.f64 x) (*.f64 1/2 eps))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x))))
(fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 1/2 eps) (cos.f64 x)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48)))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (cos.f64 x)))))
(fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (*.f64 1/3840 (pow.f64 eps 5)) (cos.f64 x))))
(fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 1/3840 (pow.f64 eps 5)))))
(*.f64 (cos.f64 x) (+.f64 (+.f64 (*.f64 1/2 eps) (*.f64 1/3840 (pow.f64 eps 5))) (*.f64 (pow.f64 eps 3) -1/48)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (*.f64 -1/645120 (*.f64 (pow.f64 eps 7) (cos.f64 x))))))
(fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 1/3840 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (*.f64 -1/645120 (*.f64 (cos.f64 x) (pow.f64 eps 7))))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (*.f64 -1/645120 (pow.f64 eps 7)))))
(*.f64 (cos.f64 x) (+.f64 (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48)) (+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (*.f64 -1/645120 (pow.f64 eps 7)))))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (+.f64 (*.f64 -1/645120 (pow.f64 eps 7)) (+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (*.f64 (pow.f64 eps 3) -1/48)))))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x)))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/2) (*.f64 x x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(fma.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x))))
(fma.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/2) (*.f64 x x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x (*.f64 x -1/2)) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (*.f64 1/24 (pow.f64 x 4))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(fma.f64 -1/720 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 6)) (fma.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x)))))
(fma.f64 -1/720 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 6)) (fma.f64 1/24 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/2) (*.f64 x x) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x (*.f64 x -1/2)) (*.f64 (pow.f64 x 4) (+.f64 (*.f64 (*.f64 x x) -1/720) 1/24)))))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)))
(sin.f64 x)
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (sin.f64 x))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (sin.f64 x))
(*.f64 (+.f64 (*.f64 (*.f64 eps eps) -1/8) 1) (sin.f64 x))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 eps (*.f64 eps -1/8))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/384 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))
(+.f64 (fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (sin.f64 x)) (*.f64 1/384 (*.f64 (sin.f64 x) (pow.f64 eps 4))))
(fma.f64 -1/8 (*.f64 eps (*.f64 eps (sin.f64 x))) (fma.f64 1/384 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (sin.f64 x)))
(*.f64 (sin.f64 x) (+.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (*.f64 (pow.f64 eps 4) 1/384)))
(*.f64 (sin.f64 x) (+.f64 1 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 1/384 eps) eps) -1/8))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/46080 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 1/384 (*.f64 (pow.f64 eps 4) (sin.f64 x))))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/46080 (*.f64 (sin.f64 x) (pow.f64 eps 6)) (+.f64 (sin.f64 x) (*.f64 1/384 (*.f64 (sin.f64 x) (pow.f64 eps 4))))))
(+.f64 (fma.f64 1/384 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (sin.f64 x)) (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) -1/8) (*.f64 -1/46080 (pow.f64 eps 6)))))
(+.f64 (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) (*.f64 -1/46080 (pow.f64 eps 6))) (*.f64 (pow.f64 eps 4) 1/384))))
(*.f64 (sin.f64 x) (+.f64 (+.f64 1 (*.f64 (pow.f64 eps 4) 1/384)) (+.f64 (*.f64 eps (*.f64 eps -1/8)) (*.f64 -1/46080 (pow.f64 eps 6)))))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (cos.f64 (*.f64 1/2 eps)) x)
(*.f64 x (cos.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))
(*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))
(fma.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))
(fma.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))
(fma.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (*.f64 1/120 (pow.f64 x 5))))
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(fma.f64 -1/5040 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 7)) (fma.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(fma.f64 -1/5040 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 7)) (fma.f64 1/120 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))
(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))
(fma.f64 (*.f64 1/2 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)))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 (*.f64 1/2 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))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))) (*.f64 (+.f64 (*.f64 (*.f64 eps eps) -1/8) 1) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))) (*.f64 (sin.f64 x) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(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 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x)))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/2) (*.f64 x x) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 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 (*.f64 -1/2 (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 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))
(fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))))

localize17.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 20 to 14 computations (30% saved)

series3.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite66.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
633×pow1_binary64
590×add-log-exp_binary64
590×log1p-expm1-u_binary64
590×expm1-log1p-u_binary64
580×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify178.0ms (0.8%)

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
23 → 13
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))

localize12.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(expm1.f64 (+.f64 (cos.f64 eps) -1))
0.3b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
1.4b
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 21 to 13 computations (38.1% saved)

series3.0ms (0%)

Counts
3 → 36
Calls

9 calls:

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

rewrite78.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
625×pow1_binary64
580×expm1-log1p-u_binary64
579×add-log-exp_binary64
579×log1p-expm1-u_binary64
568×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify138.0ms (0.6%)

Algorithm
egg-herbie
Rules
902×distribute-rgt-out_binary64
620×fma-def_binary64
565×associate-*l*_binary64
520×distribute-lft-in_binary64
434×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041370
1101370
2226370
3719370
43407370
55312370
66312370
76649370
86979370
97348370
107801370
Stop Event
node limit
Counts
117 → 68
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -31/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 379/40320 (pow.f64 eps 8)) (*.f64 -31/720 (pow.f64 eps 6)))))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(+.f64 (*.f64 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 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 1/40320 (pow.f64 eps 8) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (*.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)
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/24 (pow.f64 eps 4))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 1/40320 (pow.f64 eps 8) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (*.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)
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/6 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 4) 1/6))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/6) -1/2)))
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/6) -1/2))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -31/720 (pow.f64 eps 6))))
(fma.f64 1/6 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 6) -31/720)))
(fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 4) 1/6)))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 (*.f64 (pow.f64 eps 6) -31/720)))
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 379/40320 (pow.f64 eps 8)) (*.f64 -31/720 (pow.f64 eps 6)))))
(fma.f64 1/6 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 379/40320 (pow.f64 eps 8) (*.f64 (pow.f64 eps 6) -31/720))))
(fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 8) 379/40320))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 8) 379/40320))))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)
(expm1.f64 (+.f64 (cos.f64 eps) -1))

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 (*.f64 1/2 eps))
0.0b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
0.3b
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
1.0b
(cbrt.f64 -2)
Compiler

Compiled 37 to 32 computations (13.5% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

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

rewrite51.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
871×pow1_binary64
813×add-log-exp_binary64
811×log1p-expm1-u_binary64
811×expm1-log1p-u_binary64
795×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify98.0ms (0.5%)

Algorithm
egg-herbie
Rules
601×distribute-rgt-out_binary64
478×associate-+l+_binary64
477×distribute-lft-out_binary64
452×sqr-pow_binary64
425×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030166
167166
2145166
3459166
42111166
54525166
64919166
75453166
86478166
97506166
Stop Event
node limit
Counts
23 → 21
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 -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/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/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 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))

localize39.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.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.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))
2.5b
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
Compiler

Compiled 102 to 48 computations (52.9% saved)

series32.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
28.0ms
x
@-inf
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
1.0ms
eps
@inf
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
1.0ms
eps
@0
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.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
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
1.0ms
x
@inf
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))

rewrite64.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
709×fma-def_binary64
316×fma-neg_binary64
271×expm1-udef_binary64
271×log1p-udef_binary64
213×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01929
144712
2619512
Stop Event
node limit
Counts
1 → 17
Calls
Call 1
Inputs
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
Outputs
((#(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 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (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 (*.f64 4 (pow.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 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 cbrt.f64 (*.f64 8 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 3) 8))))) (#(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))))))

simplify94.0ms (0.4%)

Algorithm
egg-herbie
Rules
538×neg-sub0_binary64
508×neg-mul-1_binary64
358×associate-*l*_binary64
348×unswap-sqr_binary64
342×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
070635
1200591
2560515
32457508
46156508
Stop Event
node limit
Counts
41 → 36
Calls
Call 1
Inputs
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (*.f64 -1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
Outputs
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 eps (sin.f64 x) (*.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 eps (sin.f64 x)))
(fma.f64 eps (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/2))))
(*.f64 eps (+.f64 (sin.f64 x) (*.f64 1/2 (*.f64 eps (cos.f64 x)))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(fma.f64 eps (sin.f64 x) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)))))
(fma.f64 eps (sin.f64 x) (fma.f64 2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)) (*.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/6))))
(fma.f64 eps (sin.f64 x) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/2 (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) -1/6) eps))))
(+.f64 (*.f64 -1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(fma.f64 -1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 eps (sin.f64 x) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12))))))
(fma.f64 -1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 eps (sin.f64 x) (fma.f64 2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)) (*.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))))
(fma.f64 (cos.f64 x) (*.f64 -1/24 (pow.f64 eps 4)) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (fma.f64 eps (sin.f64 x) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/6)))))
(+.f64 (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/6) (*.f64 eps (sin.f64 x))) (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/24))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(*.f64 2 (+.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2))))))
(*.f64 (*.f64 2 (sin.f64 (*.f64 eps 1/2))) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x)) (*.f64 2 (+.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))))
(-.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x)))
(fma.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 x 2) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 2 (*.f64 x (neg.f64 x)))))
(fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x 2) (cos.f64 (*.f64 eps 1/2))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (-.f64 2 (*.f64 x x))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (*.f64 2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (*.f64 -1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))))
(fma.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x)) (fma.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (fma.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))) (*.f64 -1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (pow.f64 x 3)))))))
(-.f64 (fma.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2))))) (*.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (pow.f64 x 3)) (*.f64 (sin.f64 (*.f64 eps 1/2)) -1/3))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (+.f64 (*.f64 x 2) (*.f64 -1/3 (pow.f64 x 3)))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 2 (*.f64 x (neg.f64 x)))))
(+.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x 2) (*.f64 -1/3 (pow.f64 x 3))))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (-.f64 2 (*.f64 x x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 x -2))))))
(*.f64 2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 2 (sin.f64 (*.f64 eps 1/2))))
(*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 2 (sin.f64 (fma.f64 eps 1/2 x))))

eval356.0ms (1.7%)

Compiler

Compiled 14784 to 10672 computations (27.8% saved)

prune321.0ms (1.5%)

Pruning

91 alts after pruning (82 fresh and 9 done)

PrunedKeptTotal
New61328641
Fresh185472
Picked101
Done1910
Total63391724
Error
0.0b
Counts
724 → 91
Alt Table
Click to see full alt table
StatusErrorProgram
26.3b
(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)))))
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
38.2b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
35.0b
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2)
25.9b
(-.f64 (-.f64 (exp.f64 (log1p.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) 1) (cos.f64 x))
31.4b
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)
54.1b
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
54.2b
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
45.3b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
54.6b
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
15.8b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
47.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
40.8b
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
46.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 1/2))) -2)
12.5b
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
21.7b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 2) -2)
35.6b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
12.6b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
38.3b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
29.4b
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
54.1b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
25.5b
(fma.f64 1 (*.f64 (log1p.f64 (expm1.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
0.5b
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))))) (sin.f64 (*.f64 1/2 eps))) -2)
48.5b
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)
13.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 3) -2)
51.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
33.3b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 1 eps)) 1/2))) -2)
38.1b
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
0.4b
(*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (sin.f64 (*.f64 1/2 eps)))) -2)
25.6b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
37.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))))) -2)
25.6b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
38.8b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
43.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
32.1b
(fma.f64 1 (*.f64 (exp.f64 (log.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
38.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
12.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
54.1b
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 2)
54.8b
(*.f64 (log.f64 1) -2)
48.5b
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
43.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
31.7b
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
0.4b
(*.f64 (*.f64 (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
48.2b
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
38.0b
(-.f64 (cos.f64 eps) 1)
38.1b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
51.6b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
48.6b
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
12.1b
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
54.1b
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
27.8b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
54.6b
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
38.0b
(-.f64 (cos.f64 eps) (cos.f64 x))
13.9b
(*.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))))
28.7b
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
29.2b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
37.4b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
38.0b
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
23.1b
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
38.0b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
23.3b
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
29.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -2)
53.7b
(*.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)
16.5b
(*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) -2)
0.4b
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
52.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
54.7b
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
38.0b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
54.9b
(*.f64 eps (sin.f64 x))
38.4b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
36.1b
(*.f64 (sin.f64 x) (neg.f64 eps))
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
25.6b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
46.7b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
0.4b
(*.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)
38.2b
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
48.2b
(*.f64 -1/2 (*.f64 eps eps))
13.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (fma.f64 1/2 eps x))) 3) (sin.f64 (*.f64 1/2 eps))) -2)
36.1b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
32.1b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
54.0b
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
38.1b
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
39.1b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
38.5b
(-.f64 (cos.f64 (+.f64 x eps)) 1)
35.5b
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
38.7b
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
36.3b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
53.8b
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
13.3b
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
38.7b
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
Compiler

Compiled 1481 to 1176 computations (20.6% saved)

regimes539.0ms (2.5%)

Counts
165 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 3) -2)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (fma.f64 1/2 eps x))) 3) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))) -2)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 3) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (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)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
(*.f64 (*.f64 (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.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))))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (log.f64 (exp.f64 (cos.f64 x))))
(-.f64 (-.f64 (exp.f64 (log1p.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) 1) (cos.f64 x))
(*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 x))))) (sin.f64 (*.f64 1/2 eps))) -2)
(fma.f64 1 (*.f64 (log1p.f64 (expm1.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 1 (*.f64 (exp.f64 (log.f64 (cos.f64 x))) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 1 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(-.f64 (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))) (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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))))) -2)
(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))))
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(+.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))))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
Outputs
(*.f64 (*.f64 (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
Calls

4 calls:

163.0ms
x
103.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
88.0ms
eps
63.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
0.4b1x
0.4b1eps
0.4b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
0.4b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 2454 to 1453 computations (40.8% saved)

regimes462.0ms (2.1%)

Counts
144 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 3) -2)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (fma.f64 1/2 eps x))) 3) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))) -2)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 3) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 (fma.f64 1/2 eps x)) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (-.f64 (*.f64 1/2 eps) x))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (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)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
Outputs
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
Calls

4 calls:

100.0ms
eps
97.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
97.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
84.0ms
x
Results
ErrorSegmentsBranch
0.4b1x
0.4b1eps
0.4b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
0.4b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 2024 to 1297 computations (35.9% saved)

regimes878.0ms (4.1%)

Counts
135 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (fma.f64 1/2 eps x)) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) 3) -2)
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (fma.f64 1/2 eps x))) 3) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))) -2)
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) (sin.f64 (*.f64 1/2 eps))) -2)
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 3) -2)
Outputs
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
Calls

4 calls:

318.0ms
eps
192.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
174.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
121.0ms
x
Results
ErrorSegmentsBranch
12.1b1x
0.4b3eps
7.3b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
7.3b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1836 to 1201 computations (34.6% saved)

bsearch188.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
83.0ms
62461.521544933064
177630.46867678038
103.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes509.0ms (2.4%)

Counts
123 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
Outputs
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
Calls

4 calls:

183.0ms
eps
101.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
100.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
71.0ms
x
Results
ErrorSegmentsBranch
12.1b1x
0.4b3eps
7.3b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
7.3b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1645 to 1055 computations (35.9% saved)

bsearch105.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
51.0ms
62461.521544933064
177630.46867678038
52.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes271.0ms (1.3%)

Counts
122 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (/.f64 1 eps) 3) 1/3)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (-.f64 (exp.f64 (log1p.f64 (/.f64 1 eps))) 1)) 1/2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))))
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2)))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (fma.f64 1/2 eps x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))) -2)
Outputs
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
Calls

4 calls:

75.0ms
x
63.0ms
eps
42.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
40.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
12.1b1x
12.1b1eps
12.1b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
12.1b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1631 to 1052 computations (35.5% saved)

regimes598.0ms (2.8%)

Counts
111 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (cbrt.f64 eps) (/.f64 eps (cbrt.f64 eps))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 1 eps) 3))) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 eps)) 3)) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
Outputs
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
Calls

4 calls:

155.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
116.0ms
x
100.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
100.0ms
eps
Results
ErrorSegmentsBranch
12.5b1x
12.5b1eps
12.5b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
12.5b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1431 to 918 computations (35.8% saved)

regimes376.0ms (1.7%)

Counts
106 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 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 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2)) (*.f64 (*.f64 eps (cos.f64 x)) 1/4))) -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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 4))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2)
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 1))
(*.f64 (log1p.f64 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2)))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (/.f64 (cos.f64 eps) 2))))) -2)
(/.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 eps 1/2)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 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 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 eps))) -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)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) 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 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2)
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (cos.f64 (+.f64 x eps)) (expm1.f64 (log1p.f64 (cos.f64 x))))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (log.f64 (exp.f64 (cos.f64 x))))
(expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (cos.f64 x)))
(*.f64 (log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (cos.f64 x)) 3))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(-.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (pow.f64 (cos.f64 x) 2)))
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) 3)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)
(*.f64 (cbrt.f64 (pow.f64 (pow.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 (cos.f64 (+.f64 x eps)) (-.f64 (exp.f64 (log1p.f64 (cos.f64 x))) 1))
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)))
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 (pow.f64 eps 3)) 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 1/2 (-.f64 eps (*.f64 -2 x)))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -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 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(fma.f64 eps (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 eps))) (sqrt.f64 2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (exp.f64 (neg.f64 (log.f64 eps)))) 1/2))) -2)
Outputs
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
Calls

4 calls:

95.0ms
eps
82.0ms
x
63.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
59.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
12.5b1x
12.5b1eps
12.5b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
12.5b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1323 to 848 computations (35.9% saved)

regimes82.0ms (0.4%)

Counts
38 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(/.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps eps))) (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2) 2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 1 eps)) 1/2))) -2)
Outputs
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
Calls

4 calls:

21.0ms
x
20.0ms
eps
15.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
13.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
12.6b1x
12.6b1eps
12.6b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
12.6b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 387 to 241 computations (37.7% saved)

regimes212.0ms (1%)

Counts
35 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) -1) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 x (*.f64 x -1/2) 1))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
Outputs
(-.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x)))
(-.f64 (cos.f64 eps) (cos.f64 x))
Calls

4 calls:

100.0ms
x
51.0ms
eps
30.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
20.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
15.0b5x
12.4b3eps
13.4b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
13.4b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 336 to 204 computations (39.3% saved)

bsearch114.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
57.0ms
8.548859651221712e-7
0.0015213690037734044
56.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes127.0ms (0.6%)

Counts
26 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) 1)
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2)
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (*.f64 eps 1/2)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 (+.f64 x eps)) (*.f64 3 (*.f64 1/3 (cos.f64 x))))
(+.f64 (+.f64 1 (cos.f64 (+.f64 x eps))) (-.f64 -1 (cos.f64 x)))
Outputs
(-.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2)
(-.f64 (cos.f64 eps) (cos.f64 x))
Calls

4 calls:

50.0ms
x
36.0ms
eps
16.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
16.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
16.0b3x
12.5b3eps
13.5b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
13.5b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 230 to 143 computations (37.8% saved)

bsearch145.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
92.0ms
8.548859651221712e-7
0.0015213690037734044
53.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes113.0ms (0.5%)

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

2 calls:

77.0ms
x
30.0ms
eps
Results
ErrorSegmentsBranch
21.8b5x
12.9b3eps
Compiler

Compiled 145 to 92 computations (36.6% saved)

bsearch223.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
101.0ms
8.548859651221712e-7
0.0015213690037734044
122.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes256.0ms (1.2%)

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

2 calls:

161.0ms
eps
62.0ms
x
Results
ErrorSegmentsBranch
23.6b3x
18.1b4eps
Compiler

Compiled 112 to 67 computations (40.2% saved)

bsearch470.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
138.0ms
0.0015213690037734044
4.179670184499549
180.0ms
2.853947697536695e-46
3.1320759361750824e-40
151.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes79.0ms (0.4%)

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

2 calls:

44.0ms
eps
26.0ms
x
Results
ErrorSegmentsBranch
23.6b3x
18.2b4eps
Compiler

Compiled 68 to 38 computations (44.1% saved)

bsearch285.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
97.0ms
8.548859651221712e-7
0.0015213690037734044
97.0ms
2.853947697536695e-46
3.1320759361750824e-40
90.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes41.0ms (0.2%)

Counts
6 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 (*.f64 eps (*.f64 eps 1/4)) -2)
(-.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/2))) 1)
(*.f64 eps (sin.f64 x))
(*.f64 (log.f64 1) -2)
(-.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:

27.0ms
eps
10.0ms
x
Results
ErrorSegmentsBranch
38.0b1x
31.5b3eps
Compiler

Compiled 41 to 30 computations (26.8% saved)

bsearch177.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
86.0ms
8.548859651221712e-7
0.0015213690037734044
90.0ms
-1.6957635392352122
-7.795399784689043e-8
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes59.0ms (0.3%)

Accuracy

Total -7.4b remaining (-15.4%)

Threshold costs -7.4b (-15.4%)

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

2 calls:

8.0ms
x
8.0ms
eps
Results
ErrorSegmentsBranch
48.2b1x
48.2b1eps
Compiler

Compiled 37 to 27 computations (27% saved)

simplify95.0ms (0.4%)

Algorithm
egg-herbie
Rules
46×*-commutative_binary64
25×+-commutative_binary64
18×sub-neg_binary64
11×neg-sub0_binary64
11×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0102645
1170645
2207645
3231645
4247645
5250645
6251645
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (*.f64 (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -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 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2)
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 7016076163570613/4611686018427387904) (*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2)) (-.f64 (cos.f64 eps) 1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (-.f64 (cos.f64 eps) 1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (-.f64 (cos.f64 eps) 1)))
(*.f64 -1/2 (*.f64 eps eps))
Outputs
(*.f64 (*.f64 (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)))) -2)
(*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (sin.f64 x) (cos.f64 (*.f64 1/2 eps))))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8584646153404381/137438953472) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2))))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (*.f64 x 2)))))))
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (sin.f64 x)) (sin.f64 (*.f64 1/2 eps))) -2)
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2)))))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (-.f64 x x)))) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 x 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 -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 (*.f64 -1/2 (cos.f64 x)) eps) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 eps (-.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -2 (*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (*.f64 1/2 eps)) -2) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -7637040043408175/4503599627370496) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -2 (*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) (+.f64 (cos.f64 eps) -1)))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 7016076163570613/4611686018427387904) (*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2)) (-.f64 (cos.f64 eps) 1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 7016076163570613/4611686018427387904) (*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2)) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (-.f64 (cos.f64 eps) 1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 917223426299413/3213876088517980551083924184682325205044405987565585670602752) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1))))
(if (<=.f64 eps -7637040043408175/4503599627370496) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -7637040043408175/4503599627370496) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 2018542414184305/2361183241434822606848) (*.f64 -1/2 (*.f64 eps eps)) (+.f64 (cos.f64 eps) -1)))
(*.f64 -1/2 (*.f64 eps eps))
Compiler

Compiled 447 to 303 computations (32.2% saved)

soundness0.0ms (0%)

end574.0ms (2.7%)

Compiler

Compiled 419 to 245 computations (41.5% saved)

Profiling

Loading profile data...