Time bar (total: 22.1s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 10 to 7 computations (30% saved)
| 2.9s | 4015× | body | 1024 | valid |
| 2.2s | 2097× | body | 2048 | valid |
| 523.0ms | 1359× | body | 512 | valid |
| 126.0ms | 780× | body | 256 | valid |
| 8.0ms | 5× | body | 4096 | valid |
| 2× | egg-herbie |
| 76× | fma-def_binary64 |
| 57× | fma-neg_binary64 |
| 27× | cancel-sign-sub-inv_binary64 |
| 24× | sub-neg_binary64 |
| 18× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 22 |
| 1 | 17 | 22 |
| 2 | 25 | 22 |
| 3 | 38 | 22 |
| 4 | 53 | 22 |
| 5 | 81 | 22 |
| 6 | 141 | 22 |
| 7 | 199 | 22 |
| 8 | 284 | 22 |
| 9 | 355 | 22 |
| 10 | 407 | 22 |
| 11 | 411 | 22 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| 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)) |
Compiled 11 to 8 computations (27.3% saved)
| 1× | egg-herbie |
| 39× | fma-def_binary64 |
| 32× | fma-neg_binary64 |
| 15× | cancel-sign-sub-inv_binary64 |
| 12× | sub-neg_binary64 |
| 10× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 10 | 11 |
| 2 | 15 | 11 |
| 3 | 22 | 11 |
| 4 | 31 | 11 |
| 5 | 48 | 11 |
| 6 | 86 | 11 |
| 7 | 123 | 11 |
| 8 | 167 | 11 |
| 9 | 203 | 11 |
| 10 | 229 | 11 |
| 11 | 231 | 11 |
| 1× | saturated |
| Inputs |
|---|
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Outputs |
|---|
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 9 to 6 computations (33.3% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
|---|---|---|
| ▶ | 40.5b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 9 to 6 computations (33.3% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.9b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| ✓ | 1.0b | (cos.f64 (+.f64 x eps)) |
Compiled 20 to 6 computations (70% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (cos.f64 (+.f64 x eps)) |
| 1.0ms | eps | @ | inf | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 1.0ms | eps | @ | 0 | (cos.f64 (+.f64 x eps)) |
| 0.0ms | eps | @ | 0 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 0.0ms | x | @ | 0 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 1× | batch-egg-rewrite |
| 588× | unpow-prod-down_binary64 |
| 457× | fma-def_binary64 |
| 445× | log-prod_binary64 |
| 271× | pow-prod-down_binary64 |
| 266× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 17 |
| 1 | 174 | 17 |
| 2 | 2762 | 17 |
| 1× | node limit |
| Inputs |
|---|
(cos.f64 (+.f64 x eps)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))) (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 3) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x eps)) (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (sqrt.f64 (cos.f64 (+.f64 x eps)))) 1/3) (cbrt.f64 (sqrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (cos.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (pow.f64 (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (pow.f64 (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) 1) (pow.f64 (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) 1) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/3) (cbrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) -2) 1/3) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 3) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 -2) 2) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x))))))) |
| 1× | egg-herbie |
| 813× | fma-neg_binary64 |
| 459× | neg-mul-1_binary64 |
| 395× | fma-def_binary64 |
| 369× | associate-+l+_binary64 |
| 297× | distribute-rgt-neg-out_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 68 | 630 |
| 1 | 191 | 612 |
| 2 | 512 | 583 |
| 3 | 2203 | 567 |
| 4 | 7547 | 567 |
| 1× | node limit |
| Inputs |
|---|
(cos.f64 eps) |
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 x) |
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
| Outputs |
|---|
(cos.f64 eps) |
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 (neg.f64 x) (sin.f64 eps))) |
(-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))) |
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps)))) |
(+.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (*.f64 (cos.f64 eps) (*.f64 (*.f64 x x) -1/2))) |
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 x)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 x (fma.f64 (cos.f64 eps) (*.f64 x -1/2) (neg.f64 (sin.f64 eps))))) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))) |
(+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps))))) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 (*.f64 x x) -1/2)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x))))) |
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x x)) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x))))) |
(fma.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 eps) (*.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 eps (*.f64 -1 x))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 x) |
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 (cos.f64 x) (*.f64 eps (sin.f64 x))) |
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x)))) |
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (+.f64 eps x)) |
(cos.f64 (-.f64 x (*.f64 -1 eps))) |
(cos.f64 (+.f64 eps x)) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (neg.f64 x) -1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (+.f64 (cos.f64 eps) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))))) -1) |
(+.f64 (fma.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 (sin.f64 eps) (neg.f64 x))) (+.f64 (cos.f64 eps) -1)) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (fma.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2) (neg.f64 (sin.f64 eps))) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(+.f64 (+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)))))) -1) |
(+.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) (+.f64 (cos.f64 eps) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1))) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x) (fma.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 1/2) -1))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))) |
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) (*.f64 eps (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))) |
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) (*.f64 eps (sin.f64 x)))) |
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
Compiled 3964 to 1199 computations (69.8% saved)
42 alts after pruning (42 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 177 | 42 | 219 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 178 | 42 | 220 |
| Status | Error | Program |
|---|---|---|
| 57.6b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) | |
| 28.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) | |
| 40.7b | (/.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)))) | |
| ▶ | 40.6b | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 30.2b | (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) | |
| 28.6b | (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| ▶ | 40.5b | (log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 28.1b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 36.2b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 28.5b | (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)))) | |
| 58.1b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)) | |
| 48.7b | (fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x))) | |
| ▶ | 12.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
| 58.1b | (-.f64 (cos.f64 x) (cos.f64 x)) | |
| 28.1b | (-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 40.6b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 13.8b | (*.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.1b | (fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) | |
| 47.5b | (expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 40.7b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 28.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 40.6b | (*.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))))) | |
| 48.5b | (-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 41.4b | (-.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) | |
| 40.6b | (-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 40.9b | (-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) | |
| 40.7b | (log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) | |
| 40.9b | (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) | |
| 41.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 35.4b | (-.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)) | |
| 40.7b | (-.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) | |
| 30.3b | (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) | |
| 40.2b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 40.7b | (-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 30.3b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) | |
| 28.9b | (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 45.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| ▶ | 28.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
| 28.5b | (-.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)) | |
| 30.2b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 40.6b | (cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) | |
| ▶ | 40.3b | (-.f64 (cos.f64 eps) 1) |
Compiled 1348 to 892 computations (33.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 x (+.f64 x eps)) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x eps)) 1/2) |
| ✓ | 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| ✓ | 1.0b | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
Compiled 88 to 34 computations (61.4% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 7.0ms | eps | @ | -inf | (*.f64 (+.f64 x (+.f64 x eps)) 1/2) |
| 2.0ms | eps | @ | inf | (*.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 | @ | inf | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1.0ms | x | @ | 0 | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
| 1× | batch-egg-rewrite |
| 675× | fma-def_binary64 |
| 454× | log-prod_binary64 |
| 298× | fma-neg_binary64 |
| 187× | expm1-udef_binary64 |
| 187× | log1p-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 52 |
| 1 | 309 | 20 |
| 2 | 4790 | 20 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
(*.f64 (+.f64 x (+.f64 x eps)) 1/2) |
(+.f64 x (+.f64 x eps)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 0) (cos.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 0) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 0)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 x eps)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (cos.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 x eps))) (sin.f64 (*.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))) (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cbrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) (sqrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (/.f64 (cos.f64 (*.f64 1/2 (+.f64 eps eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (*.f64 (+.f64 x eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x eps) 1/2) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 x) (*.f64 1/2 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (+.f64 x eps)) (*.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) eps)) (cbrt.f64 (pow.f64 (exp.f64 1/2) eps)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) eps))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 eps eps) 1/2) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) 1/2) (fma.f64 x x (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 eps (-.f64 0 eps)) 1/2) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 eps 3)) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 eps eps)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) (fma.f64 x x (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 eps (-.f64 0 eps))) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/2 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/2 eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1/2 (*.f64 (+.f64 x eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1/2 (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 x (*.f64 1/2 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (+.f64 x eps) (*.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1/2 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 eps) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/2 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/2 eps)) (cbrt.f64 (*.f64 1/4 (*.f64 eps eps))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/4 (*.f64 eps eps))) (cbrt.f64 (*.f64 1/2 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) 1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/2 eps)) (sqrt.f64 (*.f64 1/2 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) 1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 eps)) (sqrt.f64 eps) 0))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps (/.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 0 eps)) (/.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps eps) (/.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 eps) (sqrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (+.f64 x eps) eps)) (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 0 eps) (*.f64 eps (-.f64 0 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 eps (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (fma.f64 x x (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 eps 3) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps (-.f64 0 eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps eps)) (neg.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) (neg.f64 (fma.f64 x x (*.f64 (+.f64 x eps) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps (-.f64 0 eps))) (neg.f64 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 eps 3)) (neg.f64 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (fma.f64 x x (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 x x)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 eps eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 eps) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 eps) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 eps 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x x (*.f64 (+.f64 x eps) eps)) (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 0 eps) (*.f64 eps (-.f64 0 eps))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 eps eps) (pow.f64 eps 3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 eps (*.f64 eps eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 eps 3))))) (#(struct:change #<rule egg-rr> (2) ((x . eps)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (sqrt.f64 (*.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (*.f64 (sqrt.f64 x) (sqrt.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 x eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 x x (*.f64 (+.f64 x eps) eps))) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 eps (-.f64 eps x) (*.f64 x x))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (neg.f64 (/.f64 0 eps))))))) |
| 1× | egg-herbie |
| 642× | fma-neg_binary64 |
| 585× | fma-def_binary64 |
| 505× | neg-sub0_binary64 |
| 460× | neg-mul-1_binary64 |
| 360× | unswap-sqr_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 91 | 1091 |
| 1 | 259 | 1079 |
| 2 | 714 | 952 |
| 3 | 2756 | 930 |
| 4 | 5957 | 927 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 x) |
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(*.f64 1/2 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
| Outputs |
|---|
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 (*.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)))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.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 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 x) |
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (sin.f64 x))) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))))) |
(fma.f64 (sin.f64 x) (*.f64 -1/8 (*.f64 eps eps)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (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))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 1/2 eps (*.f64 -1/48 (pow.f64 eps 3))) (sin.f64 x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(*.f64 1/2 (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 1/2 eps) (sin.f64 x)) |
(*.f64 eps (*.f64 1/2 (sin.f64 x))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 (*.f64 1/4 eps) eps))) |
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)))) |
(*.f64 eps (+.f64 (*.f64 1/4 (*.f64 eps (cos.f64 x))) (*.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 (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 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)))) |
(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 (*.f64 eps eps) -1/12))))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 (*.f64 1/2 eps) (sin.f64 x) (*.f64 -1/48 (*.f64 (cos.f64 x) (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 (*.f64 eps eps) -1/12)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) |
(+.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/12 (*.f64 1/2 eps))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 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 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))) |
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x (*.f64 x -1/2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6) (sin.f64 (*.f64 1/2 eps)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(+.f64 (*.f64 1/2 eps) x) |
(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) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.8b | (-.f64 (cos.f64 eps) 1) |
Compiled 10 to 6 computations (40% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 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) |
| 1× | batch-egg-rewrite |
| 498× | pow1_binary64 |
| 485× | add-sqr-sqrt_binary64 |
| 464× | add-log-exp_binary64 |
| 463× | log1p-expm1-u_binary64 |
| 463× | expm1-log1p-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 6 |
| 1 | 104 | 6 |
| 2 | 1283 | 6 |
| 1× | node limit |
| 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))))) |
| 1× | egg-herbie |
| 601× | distribute-rgt-out_binary64 |
| 520× | sqr-pow_binary64 |
| 481× | associate-+l+_binary64 |
| 477× | distribute-lft-out_binary64 |
| 413× | unswap-sqr_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 24 | 70 |
| 1 | 56 | 70 |
| 2 | 129 | 70 |
| 3 | 420 | 70 |
| 4 | 1995 | 70 |
| 5 | 4377 | 70 |
| 6 | 4751 | 70 |
| 7 | 5257 | 70 |
| 8 | 6247 | 70 |
| 9 | 7231 | 70 |
| 10 | 7670 | 70 |
| 1× | node limit |
| 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))))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 0.9b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) | |
| ✓ | 0.9b | (log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 1.0b | (cos.f64 (+.f64 x eps)) |
Compiled 37 to 8 computations (78.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 1.0ms | eps | @ | 0 | (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 0.0ms | x | @ | 0 | (log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 0.0ms | x | @ | -inf | (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 0.0ms | eps | @ | -inf | (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 1× | batch-egg-rewrite |
| 483× | log-prod_binary64 |
| 468× | fma-def_binary64 |
| 301× | pow-prod-down_binary64 |
| 286× | pow2_binary64 |
| 244× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 24 |
| 1 | 198 | 24 |
| 2 | 2961 | 24 |
| 1× | node limit |
| Inputs |
|---|
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (*.f64 2 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (exp.f64 (cos.f64 x)) (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (/.f64 (pow.f64 (cos.f64 x) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (exp.f64 (cos.f64 (+.f64 x eps))))) (log.f64 (neg.f64 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (exp.f64 (cos.f64 x)) (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (exp.f64 1) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (exp.f64 1) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (exp.f64 1) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (exp.f64 1) (*.f64 (neg.f64 (cos.f64 x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (cbrt.f64 (exp.f64 (*.f64 2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (*.f64 2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (exp.f64 1) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 2 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (pow.f64 (exp.f64 1) (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (exp.f64 (cos.f64 x)) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (neg.f64 (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (exp.f64 1) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (exp.f64 1) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (pow.f64 (exp.f64 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))) (pow.f64 (exp.f64 1) (/.f64 (pow.f64 (cos.f64 x) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (exp.f64 1) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (*.f64 2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (*.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (*.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -2) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -2) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (exp.f64 (cos.f64 x)) (exp.f64 (cos.f64 (+.f64 x eps)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) 1) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (cbrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 -2)) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (cbrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))) (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (sqrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 -2)) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) -2) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x)))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -2) 1) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -2) (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -2) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -2) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) 2)) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 -2) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (exp.f64 (*.f64 2 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) |
| 1× | egg-herbie |
| 683× | fma-def_binary64 |
| 587× | distribute-rgt-out_binary64 |
| 581× | associate-*r*_binary64 |
| 546× | associate-*l*_binary64 |
| 310× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 103 | 906 |
| 1 | 320 | 883 |
| 2 | 1001 | 820 |
| 3 | 5552 | 803 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(exp.f64 (-.f64 (cos.f64 eps) 1)) |
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 3))) (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2)))))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
1 |
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))) |
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)) |
(fma.f64 (sin.f64 eps) (neg.f64 x) (+.f64 (cos.f64 eps) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (sin.f64 (neg.f64 eps)) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1)) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1)) |
(+.f64 (cos.f64 eps) (+.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1))) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x)))) |
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))) |
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (cos.f64 x) (*.f64 eps (neg.f64 (sin.f64 x)))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(exp.f64 (-.f64 (cos.f64 eps) 1)) |
(exp.f64 (+.f64 (cos.f64 eps) -1)) |
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (neg.f64 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1))))) |
(-.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))) |
(*.f64 (+.f64 (*.f64 (sin.f64 eps) (neg.f64 x)) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))) |
(*.f64 (+.f64 (*.f64 x (sin.f64 (neg.f64 eps))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))) |
(+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))))) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 -1 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (+.f64 1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2))) (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1)))))) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1)))))) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) (*.f64 x (sin.f64 eps))))) |
(*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (+.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) 1) (*.f64 x (sin.f64 eps)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (+.f64 (*.f64 1/6 (sin.f64 eps)) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 3))) (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 1/2 (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)) (*.f64 -1/2 (cos.f64 eps)))) (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2)))))) |
(fma.f64 (fma.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))) (fma.f64 1/6 (sin.f64 eps) (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3)))) (*.f64 (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1))) (+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 -1 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (+.f64 1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) (*.f64 (cos.f64 eps) -1/2))) (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))))))) |
(+.f64 (-.f64 (*.f64 (*.f64 x x) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))) (fma.f64 (-.f64 (fma.f64 (sin.f64 eps) 1/6 (*.f64 -1/6 (pow.f64 (sin.f64 eps) 3))) (*.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (pow.f64 x 3) (exp.f64 (+.f64 (cos.f64 eps) -1))) (exp.f64 (+.f64 (cos.f64 eps) -1)))) |
(+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2))) (*.f64 x (sin.f64 eps)))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (fma.f64 -1/6 (pow.f64 (sin.f64 eps) 3) (*.f64 (sin.f64 eps) (+.f64 (neg.f64 (fma.f64 (cos.f64 eps) -1/2 1/2)) 1/6)))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1)))) |
(+.f64 (*.f64 (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))) (-.f64 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (fma.f64 1/2 (pow.f64 (sin.f64 eps) 2) 1/2)) x) (sin.f64 eps))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (fma.f64 -1/6 (pow.f64 (sin.f64 eps) 3) (*.f64 (sin.f64 eps) (-.f64 1/6 (fma.f64 (cos.f64 eps) -1/2 1/2))))) 1) (exp.f64 (+.f64 (cos.f64 eps) -1)))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
1 |
(+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 1 (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 1 (*.f64 eps (sin.f64 x))) |
(fma.f64 (sin.f64 x) (neg.f64 eps) 1) |
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x)))))) |
(+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))))) |
(+.f64 1 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x)))) |
(+.f64 1 (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x)))) |
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/6 (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 1/6 (sin.f64 x))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (cos.f64 x) (sin.f64 x)) (*.f64 1/6 (sin.f64 x)))) (+.f64 1 (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))))))) |
(+.f64 (-.f64 (*.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 (cos.f64 x)) 1/6))) 1)) |
(+.f64 (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x))) (fma.f64 (pow.f64 eps 3) (fma.f64 (sin.f64 x) (fma.f64 1/2 (cos.f64 x) 1/6) (*.f64 -1/6 (pow.f64 (sin.f64 x) 3))) 1)) |
(+.f64 1 (fma.f64 (pow.f64 eps 3) (fma.f64 (sin.f64 x) (fma.f64 1/2 (cos.f64 x) 1/6) (*.f64 -1/6 (pow.f64 (sin.f64 x) 3))) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x)))) (sin.f64 x))))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) |
(exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (log1p.f64 (cos.f64 (+.f64 x eps))) |
| ✓ | 0.5b | (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) |
| 1.0b | (cos.f64 (+.f64 x eps)) | |
| ✓ | 13.4b | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
Compiled 44 to 13 computations (70.5% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 113.0ms | eps | @ | -inf | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 45.0ms | x | @ | -inf | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 27.0ms | x | @ | inf | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 25.0ms | eps | @ | inf | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 7.0ms | eps | @ | 0 | (-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
| 1× | batch-egg-rewrite |
| 518× | log-prod_binary64 |
| 487× | fma-def_binary64 |
| 342× | pow-prod-down_binary64 |
| 333× | fma-neg_binary64 |
| 308× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 25 |
| 1 | 248 | 25 |
| 2 | 3321 | 25 |
| 1× | node limit |
| 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)))))) |
| 1× | egg-herbie |
| 779× | distribute-rgt-in_binary64 |
| 773× | distribute-lft-in_binary64 |
| 574× | times-frac_binary64 |
| 475× | associate-/l*_binary64 |
| 314× | associate-/r*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 191 | 2665 |
| 1 | 646 | 2394 |
| 2 | 2681 | 2103 |
| 1× | node limit |
| 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))) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))) |
| ✓ | 0.2b | (*.f64 (sin.f64 x) (sin.f64 eps)) |
| ✓ | 1.9b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
Compiled 54 to 11 computations (79.6% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | x | @ | inf | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
| 2.0ms | eps | @ | inf | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
| 1.0ms | eps | @ | -inf | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
| 1.0ms | x | @ | -inf | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
| 1.0ms | x | @ | 0 | (*.f64 (sin.f64 x) (sin.f64 eps)) |
| 1× | batch-egg-rewrite |
| 552× | log-prod_binary64 |
| 356× | pow-prod-down_binary64 |
| 308× | fma-def_binary64 |
| 302× | pow2_binary64 |
| 209× | expm1-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 48 |
| 1 | 259 | 38 |
| 2 | 3713 | 38 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(*.f64 (sin.f64 x) (sin.f64 eps)) |
(-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 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 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (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 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 (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 (exp.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 (exp.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 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (exp.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)))) (exp.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.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 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 0 (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 x eps)) 2) (/.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) -1) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 0 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) 0) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (neg.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3))) (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 0 (+.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (*.f64 0 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3))) (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 x))) (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (cos.f64 x)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) 1 (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) -1 (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 1 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) -1 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1 (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) -1 (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) -1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 2) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 x)) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (neg.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (neg.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (sin.f64 x)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (sin.f64 x)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) 1/2 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (+.f64 (cos.f64 x) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) |
| 1× | egg-herbie |
| 570× | fma-def_binary64 |
| 452× | *-commutative_binary64 |
| 448× | associate-+l+_binary64 |
| 438× | distribute-rgt-neg-in_binary64 |
| 386× | fma-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 93 | 1094 |
| 1 | 274 | 993 |
| 2 | 781 | 928 |
| 3 | 2710 | 916 |
| 4 | 5965 | 916 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(*.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))) |
(*.f64 eps (sin.f64 x)) |
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))) |
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))) |
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
1 |
(+.f64 1 (*.f64 (sin.f64 eps) x)) |
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(cos.f64 x) |
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x)) |
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))) |
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1)) |
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x)) (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 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1))) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1) (*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 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 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 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))) |
(-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x))) |
(-.f64 (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))) (*.f64 eps (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)))) (*.f64 eps (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (neg.f64 (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (sin.f64 x) (neg.f64 (fma.f64 (pow.f64 eps 3) -1/6 eps)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.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 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)) |
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps))) |
(*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6))) |
(*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 x)) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))) |
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps)))) |
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6)))) |
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 (pow.f64 x 3) -1/6 x) (*.f64 1/120 (pow.f64 x 5)))) |
(*.f64 (sin.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (fma.f64 (pow.f64 x 3) -1/6 x))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))) |
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 eps) (pow.f64 x 7)) (*.f64 x (sin.f64 eps))))) |
(+.f64 (*.f64 (sin.f64 eps) (+.f64 x (*.f64 -1/5040 (pow.f64 x 7)))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 (pow.f64 x 3) -1/6)))) |
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/5040 (pow.f64 x 7) x) (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6)))) |
(*.f64 eps (sin.f64 x)) |
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))) |
(fma.f64 eps (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)) |
(*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))) |
(*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)) |
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))) |
(fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))) |
(fma.f64 eps (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5))))) |
(*.f64 (sin.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(fma.f64 -1/5040 (*.f64 (sin.f64 x) (pow.f64 eps 7)) (fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)))) |
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/5040 (pow.f64 eps 7)) eps))) |
(*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))) (fma.f64 -1/5040 (pow.f64 eps 7) eps))) |
1 |
(+.f64 1 (*.f64 (sin.f64 eps) x)) |
(+.f64 1 (*.f64 x (sin.f64 eps))) |
(fma.f64 x (sin.f64 eps) 1) |
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))) |
(+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 1 (fma.f64 x (sin.f64 eps) (*.f64 x (*.f64 x -1/2)))) |
(fma.f64 x (sin.f64 eps) (fma.f64 x (*.f64 x -1/2) 1)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))) |
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 (fma.f64 x (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) (fma.f64 (*.f64 (sin.f64 eps) (pow.f64 x 3)) -1/6 1)) |
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 x)) (fma.f64 x (*.f64 x -1/2) 1)) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))) |
(+.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)) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))) |
(fma.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps) (cos.f64 x)) |
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))) |
(+.f64 (cos.f64 x) (fma.f64 eps (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))))) |
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 (pow.f64 eps 3) -1/6 eps)))) |
(+.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)) |
Compiled 29674 to 12473 computations (58% saved)
77 alts after pruning (76 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1307 | 71 | 1378 |
| Fresh | 32 | 5 | 37 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 1 | 4 |
| Total | 1343 | 77 | 1420 |
| Status | Error | Program |
|---|---|---|
| 41.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 40.3b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) | |
| 30.2b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 40.5b | (*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x))))) | |
| 28.1b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) | |
| 40.4b | (-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) | |
| 30.2b | (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) | |
| 29.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) | |
| 49.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.f64 (*.f64 1/2 eps))))) -2) | |
| 40.2b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 36.2b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 58.1b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)) | |
| 35.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) | |
| 39.6b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) | |
| 34.4b | (*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) | |
| 45.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) | |
| 51.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) | |
| 28.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) | |
| 28.3b | (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) | |
| 45.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 1/2) eps))) -2) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) | |
| 58.0b | (log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) | |
| 13.8b | (*.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)))) | |
| 58.1b | (log.f64 1) | |
| 52.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps eps)))) -2) | |
| 37.3b | (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 28.3b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 45.7b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x))))) | |
| 50.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) | |
| ▶ | 40.5b | (*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
| 34.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) | |
| 40.3b | (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) | |
| 47.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) | |
| 47.7b | (expm1.f64 (log.f64 (cos.f64 eps))) | |
| 52.5b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| 28.4b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) | |
| 28.4b | (-.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)) | |
| ▶ | 40.0b | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 32.4b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) | |
| 53.3b | (*.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) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| 41.6b | (log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) | |
| ▶ | 12.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2) |
| ▶ | 40.3b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 40.6b | (-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 28.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))) (neg.f64 (cos.f64 x))))) | |
| 40.7b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 55.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) | |
| 34.9b | (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) | |
| 32.4b | (*.f64 (+.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)))))) -2) | |
| ▶ | 52.3b | (*.f64 -1/2 (*.f64 eps eps)) |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 45.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 40.9b | (-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) | |
| 32.2b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) | |
| 57.4b | (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) | |
| 40.4b | (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) | |
| 40.6b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) | |
| 37.6b | (*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) | |
| 30.3b | (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) | |
| 40.9b | (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) | |
| ✓ | 40.3b | (-.f64 (cos.f64 eps) 1) |
| 37.9b | (+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) | |
| 30.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) | |
| 40.6b | (*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 40.5b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| 30.3b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) | |
| 40.3b | (log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) | |
| 34.4b | (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 28.2b | (log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) |
Compiled 2638 to 1967 computations (25.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) |
| ✓ | 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| ✓ | 1.0b | (cos.f64 (*.f64 (+.f64 x eps) 1/2)) |
| ✓ | 1.1b | (sin.f64 (*.f64 (+.f64 x eps) 1/2)) |
Compiled 171 to 97 computations (43.3% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | eps | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| 2.0ms | eps | @ | inf | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| 1.0ms | x | @ | -inf | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| 1.0ms | eps | @ | -inf | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| 1.0ms | x | @ | inf | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
| 1× | batch-egg-rewrite |
| 476× | fma-neg_binary64 |
| 343× | expm1-udef_binary64 |
| 343× | log1p-udef_binary64 |
| 223× | add-sqr-sqrt_binary64 |
| 220× | pow1_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 80 |
| 1 | 433 | 55 |
| 2 | 6247 | 55 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (*.f64 (+.f64 x eps) 1/2)) |
(cos.f64 (*.f64 (+.f64 x eps) 1/2)) |
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) |
(*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2)) (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2) (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (fma.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 1) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) 3) (pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) 3)) (+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) (-.f64 (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))) (-.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3)) (sin.f64 (*.f64 eps 1/2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 eps 1/2) (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (cos.f64 (+.f64 (*.f64 eps 1/2) (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)) (*.f64 eps 1/2))) (cos.f64 (+.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)) (*.f64 eps 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (cos.f64 (*.f64 x 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 (*.f64 x 1/2) (*.f64 (+.f64 x eps) 1/2))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 1)))))) |
| 1× | egg-herbie |
| 758× | neg-mul-1_binary64 |
| 538× | distribute-rgt-neg-out_binary64 |
| 465× | distribute-lft-neg-out_binary64 |
| 394× | +-commutative_binary64 |
| 382× | unsub-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 158 | 2398 |
| 1 | 493 | 2377 |
| 2 | 1577 | 2226 |
| 3 | 3384 | 2193 |
| 4 | 7936 | 2193 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 x)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)))))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 eps)) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 x)) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))) |
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) |
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) |
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
| Outputs |
|---|
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8))) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/48) (pow.f64 x 3) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3))))) |
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3))))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 x)) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 1/2 x))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x)))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x)))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x)))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)))))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (+.f64 (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))) |
(+.f64 (fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 eps)) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (cos.f64 (*.f64 1/2 eps))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 (pow.f64 x 3) (*.f64 (sin.f64 (*.f64 1/2 eps)) 1/48))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/48))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (pow.f64 x 3) 1/48) (*.f64 x -1/2))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 1/2 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 x)) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x))) |
(fma.f64 (*.f64 eps -1/2) (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps))))) |
(+.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) -1/2)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps)))))) |
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (pow.f64 eps 3) 1/48) (*.f64 eps -1/2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/48))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/48)))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps x))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) |
(*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))) |
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))) |
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) -1/6))))) |
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))) |
(fma.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))) |
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (*.f64 -1/48 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/96) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/96))) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) -1/6)))))) |
(fma.f64 (pow.f64 eps 4) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) -1/24) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))) |
(+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 1/2 (*.f64 eps eps)) (*.f64 (pow.f64 eps 4) -1/24)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (fma.f64 -1/2 (*.f64 x (*.f64 x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 (*.f64 x x) -1/2) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3))) (*.f64 (*.f64 x x) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) |
(+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) |
(+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/4))) |
(*.f64 x (+.f64 (*.f64 1/2 (cos.f64 (*.f64 1/2 eps))) (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/4)))) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3))))) |
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12)))) |
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3)))))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 1/48 (pow.f64 x 4))))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) |
(fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) |
(fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 (*.f64 eps -1/2) (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) |
(fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 eps -1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) -1/2)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))) |
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) |
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/48)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/48)))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 -1/2 (*.f64 eps eps)) |
Compiled 12 to 6 computations (50% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (*.f64 -1/2 (*.f64 eps eps)) |
| 1.0ms | eps | @ | inf | (*.f64 -1/2 (*.f64 eps eps)) |
| 0.0ms | eps | @ | -inf | (*.f64 -1/2 (*.f64 eps eps)) |
| 1× | batch-egg-rewrite |
| 432× | pow1_binary64 |
| 420× | add-sqr-sqrt_binary64 |
| 411× | *-un-lft-identity_binary64 |
| 401× | add-log-exp_binary64 |
| 401× | log1p-expm1-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 102 | 7 |
| 2 | 1148 | 7 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1/2 (*.f64 eps eps)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -1/2 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps))) (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 eps eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (sqrt.f64 -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 eps 4)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -1/2 (*.f64 eps eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/2 (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/2 (*.f64 eps eps)))))))) |
| 1× | egg-herbie |
| 1082× | sqr-pow_binary64 |
| 617× | cube-prod_binary64 |
| 554× | fabs-mul_binary64 |
| 523× | pow-sqr_binary64 |
| 441× | associate-*l*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 84 |
| 1 | 12 | 84 |
| 2 | 23 | 84 |
| 3 | 44 | 84 |
| 4 | 105 | 84 |
| 5 | 331 | 84 |
| 6 | 1250 | 84 |
| 7 | 2123 | 84 |
| 8 | 2287 | 84 |
| 9 | 2471 | 84 |
| 10 | 2679 | 84 |
| 11 | 2976 | 84 |
| 12 | 3371 | 84 |
| 13 | 3852 | 84 |
| 14 | 4418 | 84 |
| 15 | 5102 | 84 |
| 16 | 5935 | 84 |
| 17 | 6327 | 84 |
| 18 | 6619 | 84 |
| 19 | 6895 | 84 |
| 20 | 6969 | 84 |
| 21 | 7003 | 84 |
| 22 | 7944 | 84 |
| 1× | node limit |
| 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)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| ✓ | 0.4b | (pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
| ✓ | 0.8b | (+.f64 (cos.f64 eps) -1) |
Compiled 24 to 16 computations (33.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | -inf | (pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
| 1.0ms | eps | @ | inf | (pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
| 1.0ms | eps | @ | 0 | (pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
| 0.0ms | eps | @ | 0 | (+.f64 (cos.f64 eps) -1) |
| 0.0ms | eps | @ | 0 | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 1× | batch-egg-rewrite |
| 713× | pow1_binary64 |
| 670× | add-log-exp_binary64 |
| 670× | log1p-expm1-u_binary64 |
| 670× | expm1-log1p-u_binary64 |
| 656× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 21 |
| 1 | 171 | 21 |
| 2 | 1791 | 21 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (cos.f64 eps) -1) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (cos.f64 eps) 2)) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 eps) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (*.f64 -1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (*.f64 (cos.f64 eps) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (cos.f64 eps)) (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) -1) (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (*.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) 3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 3) (pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2)) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) 3) (pow.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (+.f64 (cos.f64 eps) -1)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (cos.f64 eps) 2)) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1))))) |
| 1× | egg-herbie |
| 878× | distribute-rgt-out_binary64 |
| 822× | distribute-lft-out_binary64 |
| 722× | associate-*l*_binary64 |
| 648× | fma-def_binary64 |
| 553× | associate-*r*_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 47 | 378 |
| 1 | 115 | 378 |
| 2 | 264 | 378 |
| 3 | 871 | 378 |
| 4 | 4146 | 378 |
| 5 | 7177 | 378 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 -1/8 (pow.f64 eps 6)) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (*.f64 -1/8 (pow.f64 eps 6))) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (*.f64 -1/8 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (+.f64 (*.f64 -1/8 (pow.f64 eps 6)) (*.f64 1/3780 (pow.f64 eps 12))))) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
| Outputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps)))) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(*.f64 -1/8 (pow.f64 eps 6)) |
(*.f64 (pow.f64 eps 6) -1/8) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (*.f64 -1/8 (pow.f64 eps 6))) |
(fma.f64 1/32 (pow.f64 eps 8) (*.f64 (pow.f64 eps 6) -1/8)) |
(fma.f64 (pow.f64 eps 6) -1/8 (*.f64 (pow.f64 eps 8) 1/32)) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (*.f64 -1/8 (pow.f64 eps 6)))) |
(fma.f64 1/32 (pow.f64 eps 8) (fma.f64 -7/1920 (pow.f64 eps 10) (*.f64 (pow.f64 eps 6) -1/8))) |
(fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 (pow.f64 eps 6) -1/8 (*.f64 -7/1920 (pow.f64 eps 10)))) |
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (*.f64 -7/1920 (pow.f64 eps 10)))) |
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (+.f64 (*.f64 -1/8 (pow.f64 eps 6)) (*.f64 1/3780 (pow.f64 eps 12))))) |
(fma.f64 1/32 (pow.f64 eps 8) (fma.f64 -7/1920 (pow.f64 eps 10) (fma.f64 -1/8 (pow.f64 eps 6) (*.f64 1/3780 (pow.f64 eps 12))))) |
(fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 -7/1920 (pow.f64 eps 10) (fma.f64 (pow.f64 eps 6) -1/8 (*.f64 1/3780 (pow.f64 eps 12))))) |
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 -7/1920 (pow.f64 eps 10) (*.f64 1/3780 (pow.f64 eps 12))))) |
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 1/3780 (pow.f64 eps 12) (*.f64 -7/1920 (pow.f64 eps 10))))) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(pow.f64 (-.f64 (cos.f64 eps) 1) 3) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps)))) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| ✓ | 0.3b | (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
| ✓ | 1.1b | (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
Compiled 44 to 37 computations (15.9% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (log.f64 (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))) |
| 1.0ms | eps | @ | -inf | (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
| 0.0ms | eps | @ | 0 | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| 0.0ms | eps | @ | inf | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| 1× | batch-egg-rewrite |
| 644× | pow1_binary64 |
| 593× | add-log-exp_binary64 |
| 593× | log1p-expm1-u_binary64 |
| 593× | expm1-log1p-u_binary64 |
| 580× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 29 |
| 1 | 166 | 29 |
| 2 | 1677 | 29 |
| 1× | node limit |
| 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)))))))) |
| 1× | egg-herbie |
| 624× | distribute-rgt-out_binary64 |
| 614× | distribute-lft-out_binary64 |
| 518× | fma-def_binary64 |
| 493× | *-commutative_binary64 |
| 483× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 39 | 262 |
| 1 | 92 | 260 |
| 2 | 205 | 258 |
| 3 | 646 | 258 |
| 4 | 2858 | 258 |
| 5 | 5791 | 258 |
| 6 | 6234 | 258 |
| 7 | 6816 | 258 |
| 8 | 7669 | 258 |
| 1× | node limit |
| 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))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.2b | (*.f64 (+.f64 x (+.f64 x eps)) 1/2) | |
| 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) | |
| 1.0b | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) | |
| ✓ | 1.9b | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
Compiled 129 to 55 computations (57.4% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 1.0ms | eps | @ | -inf | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 1.0ms | x | @ | 0 | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 1.0ms | x | @ | inf | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 1.0ms | eps | @ | inf | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 1× | batch-egg-rewrite |
| 700× | fma-def_binary64 |
| 309× | fma-neg_binary64 |
| 236× | expm1-udef_binary64 |
| 236× | log1p-udef_binary64 |
| 186× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 26 |
| 1 | 374 | 12 |
| 2 | 5458 | 12 |
| 1× | node limit |
| Inputs |
|---|
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 -1 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) (cbrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 eps 1/2))) 2) (*.f64 (cbrt.f64 (sin.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2)) (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 eps 1/2))) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sqrt.f64 -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sqrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 eps 1/2))) (*.f64 (sqrt.f64 (sin.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 -1 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) -2) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 eps 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (cos.f64 (*.f64 2 (*.f64 eps 1/2)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 1 (cos.f64 (*.f64 2 (*.f64 eps 1/2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (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 cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 1)))))) |
| 1× | egg-herbie |
| 497× | neg-sub0_binary64 |
| 469× | neg-mul-1_binary64 |
| 351× | associate-*l*_binary64 |
| 345× | fma-neg_binary64 |
| 342× | unswap-sqr_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 72 | 640 |
| 1 | 204 | 588 |
| 2 | 564 | 512 |
| 3 | 2435 | 502 |
| 4 | 6299 | 502 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/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 |
|---|
(*.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 (*.f64 eps eps) (cos.f64 x)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 eps (neg.f64 (sin.f64 x)))) |
(-.f64 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2))) (*.f64 eps (sin.f64 x))) |
(*.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 (*.f64 eps eps) (cos.f64 x)) (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 (*.f64 eps eps) (cos.f64 x)) (fma.f64 -2 (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3))) (*.f64 eps (neg.f64 (sin.f64 x))))) |
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) 1/6)) (*.f64 eps (sin.f64 x))) |
(fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6) (*.f64 eps (-.f64 (*.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 (*.f64 eps eps) (cos.f64 x)) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 -2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)))))) |
(+.f64 (fma.f64 -2 (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3))) (*.f64 eps (neg.f64 (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(fma.f64 (cos.f64 x) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 eps (*.f64 eps -1/2))) (-.f64 (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) 1/6) (*.f64 eps (sin.f64 x)))) |
(fma.f64 (cos.f64 x) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 (*.f64 -2 (pow.f64 eps 3)) -1/12) eps))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (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 eps 1/2)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x) (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2))))))) |
(+.f64 (*.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 x)))) |
(fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 -2 (*.f64 x x)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.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 eps 1/2)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 x x) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (pow.f64 x 3))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))))) |
(+.f64 (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (pow.f64 x 3))) (*.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 x)))) |
(fma.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 -2 (*.f64 x x)) (*.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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.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)))) |
Compiled 12973 to 9282 computations (28.5% saved)
86 alts after pruning (84 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 495 | 24 | 519 |
| Fresh | 11 | 60 | 71 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 2 | 5 |
| Total | 510 | 86 | 596 |
| Status | Error | Program |
|---|---|---|
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x))))) | |
| 31.2b | (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) | |
| 41.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 40.3b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) | |
| 30.2b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 40.5b | (*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 28.1b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) | |
| 34.7b | (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) | |
| 12.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2) | |
| 40.4b | (-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) | |
| 30.2b | (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) | |
| 29.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) | |
| 49.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.f64 (*.f64 1/2 eps))))) -2) | |
| 40.2b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 36.2b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| ▶ | 58.1b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)) |
| 35.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) | |
| 34.4b | (*.f64 (expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) | |
| 32.4b | (*.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) -2) | |
| 45.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) | |
| 39.6b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) | |
| 40.5b | (*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) | |
| 56.8b | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) | |
| 51.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) | |
| 37.3b | (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) | |
| 28.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) | |
| 32.0b | (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) | |
| 28.3b | (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) | |
| 45.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 1/2) eps))) -2) | |
| 36.3b | (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) | |
| 58.0b | (log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) | |
| 24.2b | (*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) | |
| 52.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps eps)))) -2) | |
| 36.5b | (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) | |
| 58.1b | (log.f64 1) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 28.3b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 45.7b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x))))) | |
| 13.1b | (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) | |
| 34.4b | (*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) | |
| ▶ | 12.3b | (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) -2) |
| 50.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) | |
| 34.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) | |
| 40.3b | (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) | |
| 47.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) | |
| ▶ | 47.7b | (expm1.f64 (log.f64 (cos.f64 eps))) |
| 52.5b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| 57.9b | (-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) | |
| 28.4b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) | |
| 28.4b | (-.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)) | |
| 53.3b | (*.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) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| 34.4b | (*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) | |
| ✓ | 40.3b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 28.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))) (neg.f64 (cos.f64 x))))) | |
| 40.7b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| ▶ | 55.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
| 32.4b | (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 34.9b | (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) | |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 15.4b | (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1))) -2) | |
| 45.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 40.9b | (-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) | |
| 57.4b | (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) | |
| 40.4b | (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) | |
| ✓ | 40.3b | (-.f64 (cos.f64 eps) 1) |
| ▶ | 52.3b | (*.f64 eps (*.f64 -1/2 eps)) |
| 32.2b | (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 40.6b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) | |
| 30.3b | (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) | |
| 40.9b | (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) | |
| 12.3b | (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) | |
| 40.6b | (*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 30.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) | |
| 40.5b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| 30.3b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) | |
| 57.4b | (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) | |
| 40.3b | (log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 34.4b | (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) | |
| 28.2b | (log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) |
Compiled 2965 to 2241 computations (24.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))) |
| ✓ | 0.4b | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1.0b | (cos.f64 (*.f64 (+.f64 x eps) 1/2)) | |
| 1.1b | (sin.f64 (*.f64 (+.f64 x eps) 1/2)) |
Compiled 162 to 110 computations (32.1% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1.0ms | eps | @ | -inf | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1.0ms | x | @ | -inf | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1.0ms | x | @ | inf | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1.0ms | x | @ | 0 | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
| 1× | batch-egg-rewrite |
| 841× | log-prod_binary64 |
| 591× | fma-def_binary64 |
| 298× | expm1-udef_binary64 |
| 298× | log1p-udef_binary64 |
| 294× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 39 |
| 1 | 321 | 39 |
| 2 | 4444 | 39 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) |
(*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 (-.f64 eps x)))) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (+.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 (-.f64 eps x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 x))) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) 3) (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (*.f64 1/2 (-.f64 x eps))) 2) (/.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 x eps))) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 x eps))) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 eps x))) (cos.f64 (*.f64 1/2 (+.f64 eps x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 x eps))) (cos.f64 (*.f64 1/2 (+.f64 eps x))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 eps 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 x)))) 1)))))) |
| 1× | egg-herbie |
| 658× | fma-def_binary64 |
| 629× | distribute-rgt-neg-out_binary64 |
| 605× | associate-*l*_binary64 |
| 590× | associate-*r*_binary64 |
| 514× | distribute-lft-neg-out_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 106 | 1259 |
| 1 | 312 | 1231 |
| 2 | 909 | 1149 |
| 3 | 4212 | 1123 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (sin.f64 (*.f64 1/2 x))) (*.f64 -1/16 (sin.f64 (*.f64 1/2 x)))))))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 4))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (sin.f64 (*.f64 1/2 x))) (*.f64 -1/16 (sin.f64 (*.f64 1/2 x))))))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) (pow.f64 x 3)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) |
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) |
(+.f64 (*.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))) |
(+.f64 (*.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/645120 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 7))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/645120 (*.f64 (pow.f64 eps 7) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
| Outputs |
|---|
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(*.f64 (*.f64 1/2 (cos.f64 (*.f64 1/2 x))) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 1/2 eps))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2)))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 eps eps)))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) |
(*.f64 eps (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 eps (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) eps) (+.f64 (*.f64 1/2 (sin.f64 (*.f64 1/2 x))) (*.f64 1/4 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)))) |
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (sin.f64 (*.f64 1/2 x))) (*.f64 -1/16 (sin.f64 (*.f64 1/2 x)))))))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (fma.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 eps eps)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (*.f64 (sin.f64 (*.f64 1/2 x)) -1/12)))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/12 (pow.f64 eps 3))) (*.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) |
(fma.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) -1/12)) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(fma.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 4))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/48 (sin.f64 (*.f64 1/2 x))) (*.f64 -1/16 (sin.f64 (*.f64 1/2 x))))))))) |
(fma.f64 -1/48 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 4)) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (fma.f64 1/4 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 eps eps)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (*.f64 (sin.f64 (*.f64 1/2 x)) -1/12))))) |
(fma.f64 -1/48 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (pow.f64 eps 4)) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/12 (pow.f64 eps 3))) (*.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))))) |
(fma.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/48 (pow.f64 eps 4)) (fma.f64 1/4 (*.f64 eps (*.f64 eps (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 3) -1/12)) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (+.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 -1/48 (pow.f64 eps 4))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.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/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x (cos.f64 (*.f64 1/2 eps))))) |
(fma.f64 1/2 (*.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)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 x (cos.f64 (*.f64 1/2 eps)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x (cos.f64 (*.f64 1/2 eps)))))) |
(fma.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (fma.f64 1/2 (*.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/2 (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/4)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/4)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) (pow.f64 x 3)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) -1/12) (pow.f64 x 3) (fma.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x (cos.f64 (*.f64 1/2 eps))))))) |
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12)) (pow.f64 x 3) (fma.f64 -1/4 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (fma.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps)))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) |
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/4)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12)))) |
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/4)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 x (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (+.f64 1/2 (*.f64 (*.f64 x x) -1/12))))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 x eps)))) |
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 x eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) |
(*.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 1/2 x) (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) |
(fma.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3)))) |
(+.f64 (*.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))) |
(fma.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))) |
(fma.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/48 (pow.f64 x 3)) (*.f64 1/3840 (pow.f64 x 5))))) |
(fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 1/3840 (pow.f64 x 5))))) |
(+.f64 (*.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/645120 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 7))) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(fma.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/645120 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 7)) (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(fma.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 5)) (fma.f64 1/2 (*.f64 x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/645120 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 7)))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/48 (pow.f64 x 3)) (*.f64 -1/645120 (pow.f64 x 7)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 1/3840 (pow.f64 x 5))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/3840 (pow.f64 x 5)) (*.f64 -1/645120 (pow.f64 x 7))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) |
(*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 1/2 eps)) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))) |
(fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 x)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 (pow.f64 eps 3) -1/48 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 1/2 eps (*.f64 (pow.f64 eps 3) -1/48))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))) |
(fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (fma.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 5)) (*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 x))))) |
(fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (*.f64 1/3840 (pow.f64 eps 5))))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (pow.f64 eps 3) -1/48) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 1/2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (fma.f64 (pow.f64 eps 3) -1/48 (*.f64 1/3840 (pow.f64 eps 5))))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 1/3840 (*.f64 (pow.f64 eps 5) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/645120 (*.f64 (pow.f64 eps 7) (sin.f64 (*.f64 1/2 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))))))) |
(fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (fma.f64 1/3840 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 5)) (fma.f64 -1/645120 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 7)) (*.f64 (*.f64 1/2 eps) (sin.f64 (*.f64 1/2 x)))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (*.f64 -1/645120 (pow.f64 eps 7)))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/48)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/645120 (pow.f64 eps 7))) (fma.f64 (pow.f64 eps 3) -1/48 (*.f64 1/2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (fma.f64 1/2 eps (*.f64 (pow.f64 eps 3) -1/48)) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/645120 (pow.f64 eps 7))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 eps))) |
Compiled 12 to 8 computations (33.3% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (expm1.f64 (log.f64 (cos.f64 eps))) |
| ✓ | 0.8b | (log.f64 (cos.f64 eps)) |
Compiled 12 to 5 computations (58.3% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 18.0ms | eps | @ | -inf | (log.f64 (cos.f64 eps)) |
| 15.0ms | eps | @ | inf | (log.f64 (cos.f64 eps)) |
| 2.0ms | eps | @ | -inf | (expm1.f64 (log.f64 (cos.f64 eps))) |
| 1.0ms | eps | @ | 0 | (log.f64 (cos.f64 eps)) |
| 1.0ms | eps | @ | 0 | (expm1.f64 (log.f64 (cos.f64 eps))) |
| 1× | batch-egg-rewrite |
| 414× | pow1_binary64 |
| 397× | add-sqr-sqrt_binary64 |
| 391× | *-un-lft-identity_binary64 |
| 379× | add-log-exp_binary64 |
| 379× | log1p-expm1-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 11 |
| 1 | 93 | 11 |
| 2 | 1048 | 11 |
| 1× | node limit |
| Inputs |
|---|
(log.f64 (cos.f64 eps)) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cos.f64 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (cos.f64 eps))) (log.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (log.f64 (cbrt.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (cos.f64 eps))) (log.f64 (sqrt.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (log.f64 (cos.f64 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (cos.f64 eps))) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 eps))) 2) (cbrt.f64 (log.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (cos.f64 eps))) (sqrt.f64 (log.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (log.f64 (sqrt.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (log.f64 (cbrt.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (log.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (log.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2) (pow.f64 (cbrt.f64 (log.f64 (cos.f64 eps))) 2)) 1/3) (cbrt.f64 (cbrt.f64 (log.f64 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2) (sqrt.f64 (log.f64 (cos.f64 eps)))) 1/3) (cbrt.f64 (sqrt.f64 (log.f64 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 (cos.f64 eps)))) 2) 3) (cbrt.f64 (log.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (log.f64 (cos.f64 eps)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (log.f64 (cos.f64 eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (cos.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (cos.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (cos.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (cos.f64 eps)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) 2)) (log.f64 (cbrt.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (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 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) 1/3) (cbrt.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1))) 2) 3) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) 1) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x 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 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 (cos.f64 eps) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 eps)) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1))))) |
| 1× | egg-herbie |
| 898× | distribute-rgt-out_binary64 |
| 648× | fma-def_binary64 |
| 581× | associate-*l*_binary64 |
| 528× | distribute-lft-in_binary64 |
| 434× | sqr-pow_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 39 | 188 |
| 1 | 93 | 188 |
| 2 | 212 | 188 |
| 3 | 721 | 188 |
| 4 | 3446 | 188 |
| 5 | 5357 | 188 |
| 6 | 6400 | 188 |
| 7 | 6737 | 188 |
| 8 | 7067 | 188 |
| 9 | 7436 | 188 |
| 10 | 7889 | 188 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/12 (pow.f64 eps 4))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/12 (pow.f64 eps 4)) (*.f64 -1/45 (pow.f64 eps 6)))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/12 (pow.f64 eps 4)) (+.f64 (*.f64 -1/45 (pow.f64 eps 6)) (*.f64 -17/2520 (pow.f64 eps 8))))) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (cos.f64 eps) 1) |
| Outputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/12 (pow.f64 eps 4))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/12 (pow.f64 eps 4))) |
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/12) -1/2)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/12 (pow.f64 eps 4)) (*.f64 -1/45 (pow.f64 eps 6)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/12 (pow.f64 eps 4) (*.f64 -1/45 (pow.f64 eps 6)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/45 (pow.f64 eps 6) (*.f64 -1/12 (pow.f64 eps 4)))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/12 (pow.f64 eps 4)) (+.f64 (*.f64 -1/45 (pow.f64 eps 6)) (*.f64 -17/2520 (pow.f64 eps 8))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/12 (pow.f64 eps 4) (fma.f64 -1/45 (pow.f64 eps 6) (*.f64 -17/2520 (pow.f64 eps 8))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/45 (pow.f64 eps 6) (fma.f64 -17/2520 (pow.f64 eps 8) (*.f64 -1/12 (pow.f64 eps 4))))) |
(*.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 (pow.f64 eps 4) 1/24)) |
(fma.f64 (pow.f64 eps 4) 1/24 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 (pow.f64 eps 6) -1/720))) |
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 6) -1/720))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 (pow.f64 eps 6) -1/720))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 (pow.f64 eps 8) 1/40320)))) |
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320)))) |
(fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (pow.f64 eps 6) -1/720 (fma.f64 (pow.f64 eps 8) 1/40320 (*.f64 -1/2 (*.f64 eps eps))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/24 (fma.f64 (pow.f64 eps 6) -1/720 (*.f64 (pow.f64 eps 8) 1/40320)))) |
(-.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) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)) |
| ✓ | 0.2b | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 0.9b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) | |
| 1.0b | (cos.f64 (+.f64 x eps)) |
Compiled 40 to 12 computations (70% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 1.0ms | eps | @ | 0 | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 1.0ms | x | @ | -inf | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 1.0ms | x | @ | inf | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 1.0ms | eps | @ | -inf | (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
| 1× | batch-egg-rewrite |
| 504× | log-prod_binary64 |
| 477× | fma-def_binary64 |
| 316× | pow-prod-down_binary64 |
| 303× | pow2_binary64 |
| 244× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 25 |
| 1 | 237 | 25 |
| 2 | 3176 | 25 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 x eps)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (*.f64 (neg.f64 (cos.f64 x)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (cos.f64 (+.f64 x eps))) (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 4) (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) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/2) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 5) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) -2) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) 2) (pow.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) 2) (pow.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (*.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (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 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (*.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (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 (-.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 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.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 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.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 sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (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)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (*.f64 (neg.f64 (cos.f64 x)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (cos.f64 (+.f64 x eps)) (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (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 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (/.f64 (pow.f64 (cos.f64 x) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 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 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x 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)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 6) 1/6)))) (#(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 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (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 fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(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 exp.f64 (*.f64 (*.f64 2 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.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 (pow.f64 1 1/2) (-.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 1 1/2) (-.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 1 1/2) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 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 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x))))))) |
| 1× | egg-herbie |
| 866× | fma-neg_binary64 |
| 674× | fma-def_binary64 |
| 520× | associate-*r*_binary64 |
| 511× | associate-*l*_binary64 |
| 437× | unswap-sqr_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 112 | 967 |
| 1 | 343 | 934 |
| 2 | 1095 | 892 |
| 3 | 5396 | 881 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 (-.f64 (cos.f64 eps) 1) 2) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (cos.f64 eps) 1) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (pow.f64 (sin.f64 eps) 2)) (pow.f64 x 2)) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x))))) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (cos.f64 eps) 1) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (pow.f64 (sin.f64 eps) 2)) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (*.f64 -1 (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (sin.f64 eps))))) (pow.f64 x 3)) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x)))))) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4)))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 eps 5) (+.f64 (*.f64 -1/12 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (*.f64 (cos.f64 x) (sin.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4))))) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
| Outputs |
|---|
(pow.f64 (-.f64 (cos.f64 eps) 1) 2) |
(pow.f64 (+.f64 (cos.f64 eps) -1) 2) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (*.f64 (*.f64 -2 (+.f64 (cos.f64 eps) -1)) (*.f64 (sin.f64 eps) x))) |
(fma.f64 (+.f64 (*.f64 (cos.f64 eps) -2) 2) (*.f64 (sin.f64 eps) x) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (*.f64 (sin.f64 eps) x) (fma.f64 (cos.f64 eps) -2 2) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (cos.f64 eps) 1) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (pow.f64 (sin.f64 eps) 2)) (pow.f64 x 2)) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x))))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (fma.f64 (fma.f64 2 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (*.f64 (*.f64 -2 (+.f64 (cos.f64 eps) -1)) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (fma.f64 (fma.f64 (+.f64 (*.f64 (cos.f64 eps) 2) -2) (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (*.f64 (*.f64 (sin.f64 eps) x) (+.f64 (*.f64 (cos.f64 eps) -2) 2)))) |
(fma.f64 (*.f64 (sin.f64 eps) x) (fma.f64 (cos.f64 eps) -2 2) (fma.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (fma.f64 (cos.f64 eps) 2 -2) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) |
(fma.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (fma.f64 (cos.f64 eps) 2 -2) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (fma.f64 (*.f64 (sin.f64 eps) x) (fma.f64 (cos.f64 eps) -2 2) (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) |
(+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (cos.f64 eps) 1) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (pow.f64 (sin.f64 eps) 2)) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) (*.f64 -1 (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (sin.f64 eps))))) (pow.f64 x 3)) (*.f64 -2 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (sin.f64 eps) x)))))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (fma.f64 (fma.f64 2 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (fma.f64 (fma.f64 1/3 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (*.f64 -1 (+.f64 (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))) (*.f64 (sin.f64 eps) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)))))) (pow.f64 x 3) (*.f64 (*.f64 -2 (+.f64 (cos.f64 eps) -1)) (*.f64 (sin.f64 eps) x))))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (fma.f64 (fma.f64 (+.f64 (*.f64 (cos.f64 eps) 2) -2) (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (sin.f64 eps) 2)) (*.f64 x x) (fma.f64 (fma.f64 1/3 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -1/2 1/2)) -2)) (pow.f64 x 3) (*.f64 (*.f64 (sin.f64 eps) x) (+.f64 (*.f64 (cos.f64 eps) -2) 2))))) |
(+.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (fma.f64 (*.f64 (sin.f64 eps) (+.f64 (fma.f64 (cos.f64 eps) 1/3 -1/3) (*.f64 1 (+.f64 (cos.f64 eps) -1)))) (pow.f64 x 3) (*.f64 x (+.f64 (*.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -2 2)) (*.f64 x (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (fma.f64 (cos.f64 eps) 2 -2) (pow.f64 (sin.f64 eps) 2))))))) |
(+.f64 (fma.f64 (*.f64 (sin.f64 eps) x) (fma.f64 (cos.f64 eps) -2 2) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (*.f64 (*.f64 x x) (+.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (fma.f64 (cos.f64 eps) 2 -2) (pow.f64 (sin.f64 eps) 2)) (*.f64 x (*.f64 (sin.f64 eps) (+.f64 (fma.f64 (cos.f64 eps) 1/3 -1/3) (+.f64 (cos.f64 eps) -1))))))) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) |
(*.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) |
(*.f64 eps (*.f64 eps (pow.f64 (sin.f64 x) 2))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 eps (*.f64 eps (pow.f64 (sin.f64 x) 2)))) |
(*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (pow.f64 eps 3)))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4)))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2) (*.f64 (fma.f64 -1/3 (pow.f64 (sin.f64 x) 2) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4)))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/3 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4) (*.f64 eps (*.f64 eps (pow.f64 (sin.f64 x) 2))))) |
(fma.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/3 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (pow.f64 eps 3))))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 (pow.f64 eps 5) (+.f64 (*.f64 -1/12 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (*.f64 (cos.f64 x) (sin.f64 x))))) (+.f64 (*.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2)) (*.f64 (+.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (pow.f64 eps 5) (*.f64 (*.f64 (cos.f64 x) (sin.f64 x)) -1/4) (fma.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2) (*.f64 (fma.f64 -1/3 (pow.f64 (sin.f64 x) 2) (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 (pow.f64 eps 5) (*.f64 (sin.f64 x) (*.f64 (cos.f64 x) -1/4)) (fma.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/3 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4) (*.f64 eps (*.f64 eps (pow.f64 (sin.f64 x) 2)))))) |
(+.f64 (fma.f64 (fma.f64 (pow.f64 (sin.f64 x) 2) -1/3 (*.f64 1/4 (pow.f64 (cos.f64 x) 2))) (pow.f64 eps 4) (*.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2))) (*.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (+.f64 (pow.f64 eps 3) (*.f64 (pow.f64 eps 5) -1/4)))) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 2) |
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 2) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (neg.f64 x) -1)) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 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 (sin.f64 eps) x) (*.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 (fma.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2) (neg.f64 (sin.f64 eps))) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 (sin.f64 eps) x) (*.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 (pow.f64 x 3) 1/6) (neg.f64 x)))) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (-.f64 (*.f64 (pow.f64 x 3) 1/6) 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 -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 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.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))))) |
(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 (sin.f64 x) (pow.f64 eps 3)) 1/6 (*.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 (pow.f64 eps 3) 1/6)))) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (-.f64 (fma.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) 1/6 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) (*.f64 eps (sin.f64 x)))) |
(fma.f64 (cos.f64 x) (*.f64 (pow.f64 eps 4) 1/24) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 (pow.f64 eps 3) 1/6))))) |
(fma.f64 (cos.f64 x) (*.f64 (pow.f64 eps 4) 1/24) (fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps)))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
| ✓ | 13.5b | (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3)) |
| ✓ | 38.8b | (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3) |
Compiled 90 to 56 computations (37.8% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | eps | @ | -inf | (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3) |
| 3.0ms | x | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
| 3.0ms | eps | @ | 0 | (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3) |
| 2.0ms | eps | @ | inf | (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3) |
| 1.0ms | eps | @ | 0 | (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3)) |
| 1× | batch-egg-rewrite |
| 454× | log-prod_binary64 |
| 366× | fma-def_binary64 |
| 272× | pow2_binary64 |
| 235× | pow-prod-down_binary64 |
| 188× | expm1-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 27 |
| 1 | 350 | 19 |
| 2 | 4228 | 19 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3) |
(sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3)) |
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 eps))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 eps)))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 1/2 eps)) (cbrt.f64 (*.f64 (*.f64 eps eps) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 eps eps) 1/4)) (cbrt.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 1/2 eps)) (sqrt.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1/8 1/3) eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 1/2 (sqrt.f64 eps)) (sqrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 eps eps) 1/2) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (pow.f64 eps 3)) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 eps eps)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 eps eps) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 1/8 (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/2 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 eps) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1/2 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/2 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) 1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/2 eps)) (cbrt.f64 (*.f64 (*.f64 eps eps) 1/4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 eps eps) 1/4)) (cbrt.f64 (*.f64 1/2 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) 1/2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/2 eps)) (sqrt.f64 (*.f64 1/2 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1/8 1/3) eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 eps)) (sqrt.f64 eps) 0))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 0)))))) (#(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))) (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 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (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 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 4)) (sqrt.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))))))) (#(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 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))) 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 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)))) (#(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 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))))) (#(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 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))))) (#(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 1/2 (cos.f64 eps))))) 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 1/2 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 4)))) (#(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 (sin.f64 (*.f64 1/2 eps)) 4))))) (#(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 1/2 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 1)))))) |
| 1× | egg-herbie |
| 714× | sqr-pow_binary64 |
| 658× | fma-def_binary64 |
| 641× | distribute-lft-out_binary64 |
| 482× | unswap-sqr_binary64 |
| 289× | pow-sqr_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 54 | 572 |
| 1 | 141 | 372 |
| 2 | 335 | 372 |
| 3 | 1056 | 372 |
| 4 | 2328 | 372 |
| 5 | 3996 | 372 |
| 6 | 4618 | 372 |
| 7 | 5019 | 372 |
| 8 | 5664 | 372 |
| 9 | 6359 | 372 |
| 10 | 7151 | 372 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(*.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)))) |
(*.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))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(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) |
| Outputs |
|---|
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 1/2 eps) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(neg.f64 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 (cbrt.f64 -1/8) (neg.f64 eps)) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(neg.f64 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 (cbrt.f64 -1/8) (neg.f64 eps)) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(neg.f64 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 (cbrt.f64 -1/8) (neg.f64 eps)) |
(*.f64 -1 (*.f64 eps (cbrt.f64 -1/8))) |
(neg.f64 (*.f64 eps (cbrt.f64 -1/8))) |
(*.f64 (cbrt.f64 -1/8) (neg.f64 eps)) |
(*.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 eps (fma.f64 -1/48 (*.f64 eps eps) 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 1/2 eps))) |
(fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 1/2 eps))) |
(fma.f64 1/2 eps (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/3840 (pow.f64 eps 5)))) |
(fma.f64 eps (fma.f64 -1/48 (*.f64 eps eps) 1/2) (*.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/2 eps (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 -1/645120 (pow.f64 eps 7))))) |
(fma.f64 eps (fma.f64 eps (*.f64 eps -1/48) 1/2) (fma.f64 -1/645120 (pow.f64 eps 7) (*.f64 1/3840 (pow.f64 eps 5)))) |
(fma.f64 eps (fma.f64 -1/48 (*.f64 eps eps) 1/2) (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 -1/645120 (pow.f64 eps 7)))) |
(*.f64 1/4 (pow.f64 eps 2)) |
(*.f64 1/4 (*.f64 eps eps)) |
(*.f64 eps (*.f64 eps 1/4)) |
(+.f64 (*.f64 1/4 (pow.f64 eps 2)) (*.f64 -1/48 (pow.f64 eps 4))) |
(fma.f64 1/4 (*.f64 eps eps) (*.f64 -1/48 (pow.f64 eps 4))) |
(fma.f64 -1/48 (pow.f64 eps 4) (*.f64 eps (*.f64 eps 1/4))) |
(fma.f64 eps (*.f64 eps 1/4) (*.f64 -1/48 (pow.f64 eps 4))) |
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps -1/48) 1/4)) |
(+.f64 (*.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 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)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) |
Compiled 17909 to 9800 computations (45.3% saved)
85 alts after pruning (81 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 740 | 25 | 765 |
| Fresh | 23 | 56 | 79 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 4 | 6 |
| Total | 766 | 85 | 851 |
| Status | Error | Program |
|---|---|---|
| 58.1b | (expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x))))) | |
| 30.2b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 40.5b | (*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 41.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 40.9b | (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) | |
| 28.1b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) | |
| 34.7b | (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) | |
| 12.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2) | |
| 40.4b | (-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) | |
| 58.1b | (fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) | |
| 29.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) | |
| 21.9b | (*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 1/2 eps)))) -2) | |
| 45.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) | |
| 49.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.f64 (*.f64 1/2 eps))))) -2) | |
| 40.2b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 35.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) | |
| 40.9b | (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) | |
| 45.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) | |
| 39.6b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) | |
| 32.4b | (*.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) -2) | |
| 56.8b | (log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) | |
| 40.3b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 eps)))) -2) | |
| 51.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) | |
| 28.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) | |
| 28.3b | (log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) | |
| 45.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 1/2) eps))) -2) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) | |
| 36.3b | (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) | |
| 58.0b | (log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) | |
| 28.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 40.3b | (*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) | |
| 49.1b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) | |
| 37.3b | (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) | |
| 30.3b | (fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) | |
| 24.2b | (*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) | |
| 58.1b | (log.f64 1) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 28.3b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) | |
| 45.7b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x))))) | |
| 13.1b | (*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) | |
| 49.0b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) | |
| 34.4b | (*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) | |
| 40.5b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| 40.3b | (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) | |
| 30.2b | (-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) | |
| 48.6b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) | |
| 48.4b | (expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) | |
| 36.5b | (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) | |
| 52.5b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| ✓ | 47.7b | (expm1.f64 (log.f64 (cos.f64 eps))) |
| 57.9b | (-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) | |
| 55.9b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) | |
| 34.4b | (*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) | |
| 28.4b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) | |
| 28.4b | (-.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)) | |
| 53.3b | (*.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) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| ✓ | 40.3b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 36.2b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 28.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 50.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) | |
| 28.2b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))) (neg.f64 (cos.f64 x))))) | |
| 40.7b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 32.4b | (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 34.9b | (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) | |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 15.4b | (*.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1))) -2) | |
| 45.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 57.4b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) | |
| ✓ | 40.3b | (-.f64 (cos.f64 eps) 1) |
| ✓ | 52.3b | (*.f64 eps (*.f64 -1/2 eps)) |
| 32.2b | (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 30.3b | (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) | |
| 34.9b | (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) | |
| 53.3b | (sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) 2)) | |
| 40.6b | (*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 12.3b | (*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) | |
| 30.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) | |
| 37.6b | (*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) | |
| 58.0b | (sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) | |
| 34.4b | (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) | |
| 57.4b | (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) | |
| 28.2b | (log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) |
Compiled 1434 to 1083 computations (24.5% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.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 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) |
(fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (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))))) |
(/.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)))) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) -2) |
(*.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) -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)))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (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 (*.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 (log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x))))) |
(log.f64 (exp.f64 (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 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3) (neg.f64 (cos.f64 x))))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))) (neg.f64 (cos.f64 x))))) |
(log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log.f64 (+.f64 1 (expm1.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)) |
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) |
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(*.f64 (+.f64 (*.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)))))) -2) |
(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)) |
(-.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))))) |
(*.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))))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) |
| Outputs |
|---|
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
4 calls:
| 390.0ms | x |
| 385.0ms | eps |
| 169.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 150.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.5b | 3 | eps |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 2448 to 1306 computations (46.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 76.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 56.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.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 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) |
(fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (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))))) |
(/.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)))) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) -2) |
(*.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) -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)))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 1 (/.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (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 (*.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 (log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1))) -2) |
| Outputs |
|---|
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
4 calls:
| 368.0ms | x |
| 255.0ms | eps |
| 146.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 138.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.5b | 3 | eps |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 2047 to 1173 computations (42.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 157.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 60.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.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 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) |
(fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (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))))) |
(/.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)))) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) -2) |
(*.f64 (+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))) -2) |
| Outputs |
|---|
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
4 calls:
| 359.0ms | eps |
| 296.0ms | x |
| 189.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 189.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.5b | 3 | eps |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1910 to 1110 computations (41.9% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 56.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 65.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.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 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
| Outputs |
|---|
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
4 calls:
| 474.0ms | eps |
| 341.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 259.0ms | x |
| 211.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.5b | 3 | eps |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1758 to 1034 computations (41.2% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 60.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 58.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2) |
(*.f64 (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.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) |
| Outputs |
|---|
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
4 calls:
| 468.0ms | eps |
| 401.0ms | x |
| 200.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 148.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.5b | 3 | eps |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.5b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1732 to 1032 computations (40.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 94.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 59.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
| Outputs |
|---|
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) |
4 calls:
| 218.0ms | eps |
| 196.0ms | x |
| 188.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 167.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.7b | 3 | x |
| 0.5b | 3 | eps |
| 6.6b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 6.6b | 3 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1630 to 971 computations (40.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 56.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 57.0ms | -0.01587428569448531 | -0.0004093905845400458 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (*.f64 (*.f64 eps eps) (/.f64 1 eps)) 1/2))) -2) |
(expm1.f64 (log.f64 (cos.f64 eps))) |
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1)) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x 1)) |
(fabs.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6)) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 6) -2) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))) -2) |
(*.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 6) 1/3) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (cbrt.f64 -1/8) (neg.f64 eps)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (pow.f64 eps 3) 1/2) (*.f64 eps 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 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2) |
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2)) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x))) |
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (exp.f64 (log.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (expm1.f64 (log1p.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 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (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 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (cos.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(-.f64 (-.f64 (exp.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) 1) (cos.f64 x)) |
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (exp.f64 (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (cbrt.f64 (pow.f64 (*.f64 1/2 eps) 3)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (expm1.f64 (log1p.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 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 3) 1/6) eps))) |
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (sqrt.f64 (*.f64 1/2 eps)) 2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) |
(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 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (pow.f64 (pow.f64 (*.f64 1/2 eps) 3) 1/3))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) 3/2)) -2) |
(log.f64 (exp.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -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 (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 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))))) -2) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) -2) |
(expm1.f64 (sqrt.f64 (pow.f64 (log.f64 (cos.f64 eps)) 2))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps))))) |
| Outputs |
|---|
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
4 calls:
| 118.0ms | x |
| 93.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 79.0ms | eps |
| 57.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 12.3b | 1 | x |
| 12.3b | 1 | eps |
| 12.3b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 12.3b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1616 to 967 computations (40.2% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (/.f64 (*.f64 (*.f64 eps eps) 1/2) eps))) -2) |
| Outputs |
|---|
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
4 calls:
| 195.0ms | eps |
| 47.0ms | x |
| 22.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 19.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 15.2b | 3 | x |
| 12.2b | 3 | eps |
| 12.8b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 12.8b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 324 to 193 computations (40.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 66.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 63.0ms | -0.0004093905845400458 | -3.029191699827036e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 3 (*.f64 1/3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 1/3 (*.f64 3 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 1/3 (*.f64 3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
(*.f64 3 (*.f64 1/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) |
| Outputs |
|---|
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
4 calls:
| 79.0ms | eps |
| 70.0ms | x |
| 29.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 22.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 16.4b | 3 | x |
| 12.2b | 3 | eps |
| 12.8b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 12.8b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 266 to 161 computations (39.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 62.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 75.0ms | -0.0004093905845400458 | -3.029191699827036e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) |
(log.f64 (+.f64 1 (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
| Outputs |
|---|
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
4 calls:
| 32.0ms | eps |
| 32.0ms | x |
| 17.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 14.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 16.4b | 3 | x |
| 17.1b | 3 | eps |
| 18.6b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 18.6b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 164 to 100 computations (39% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 80.0ms | 5.765655092283564e-33 | 3.57476422624369e-26 |
| 102.0ms | -9.663103832920895e-41 | -1.931165182630883e-44 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 x) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
4 calls:
| 40.0ms | x |
| 25.0ms | eps |
| 12.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 11.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 21.1b | 5 | x |
| 18.1b | 3 | eps |
| 18.9b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 18.9b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 128 to 73 computations (43% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 64.0ms | 1.4478825126045238e-27 | 3.866108660305141e-27 |
| 58.0ms | -0.0004093905845400458 | -3.029191699827036e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.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)) |
(expm1.f64 (*.f64 -1/2 (*.f64 eps eps))) |
(*.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 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(-.f64 (cos.f64 eps) 1) |
2 calls:
| 32.0ms | x |
| 22.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 21.1b | 5 | x |
| 18.5b | 3 | eps |
Compiled 88 to 55 computations (37.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 63.0ms | 1.4478825126045238e-27 | 3.866108660305141e-27 |
| 58.0ms | -0.0004093905845400458 | -3.029191699827036e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
(-.f64 (cos.f64 eps) 1) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(*.f64 eps (*.f64 -1/2 eps)) |
(-.f64 (cos.f64 eps) 1) |
2 calls:
| 13.0ms | eps |
| 5.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 40.3b | 1 | x |
| 34.6b | 3 | eps |
Compiled 33 to 23 computations (30.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 56.0ms | 0.0008569044353900222 | 5.962625102886873 |
| 58.0ms | -0.0004093905845400458 | -3.029191699827036e-5 |
Compiled 14 to 10 computations (28.6% saved)
Total -6.5b remaining (-12.4%)
Threshold costs -6.5b (-12.4%)
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(-.f64 (+.f64 1 (*.f64 -1/2 (*.f64 eps eps))) 1) |
(log.f64 1) |
| Outputs |
|---|
(*.f64 eps (*.f64 -1/2 eps)) |
2 calls:
| 5.0ms | eps |
| 4.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 52.3b | 1 | x |
| 52.3b | 1 | eps |
Compiled 29 to 20 computations (31% saved)
| 1× | egg-herbie |
| 40× | *-commutative_binary64 |
| 29× | +-commutative_binary64 |
| 21× | sub-neg_binary64 |
| 11× | neg-sub0_binary64 |
| 11× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 115 | 851 |
| 1 | 188 | 851 |
| 2 | 231 | 851 |
| 3 | 251 | 851 |
| 4 | 261 | 851 |
| 5 | 263 | 851 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 x -296173270697507/3064991081731777716716694054300618367237478244367204352) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 8426514357657687/1461501637330902918203684832716283019655932542976) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8072214747750447/5575186299632655785383929568162090376495104) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8072214747750447/5575186299632655785383929568162090376495104) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (*.f64 -1/2 eps)) (-.f64 (cos.f64 eps) 1))) |
(*.f64 eps (*.f64 -1/2 eps)) |
| Outputs |
|---|
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.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))))) -2) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 x) (pow.f64 eps 2))) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (+.f64 (sin.f64 x) (*.f64 1/2 (*.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))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))) (cos.f64 x))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (neg.f64 (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -2287725668430619/144115188075855872) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps (*.f64 eps (cos.f64 x))) (+.f64 -1/2 (*.f64 eps (*.f64 eps 1/24)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) |
(*.f64 (*.f64 (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 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 eps x)))))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.f64 eps (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 x -296173270697507/3064991081731777716716694054300618367237478244367204352) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 8426514357657687/1461501637330902918203684832716283019655932542976) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 x -296173270697507/3064991081731777716716694054300618367237478244367204352) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 8426514357657687/1461501637330902918203684832716283019655932542976) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8072214747750447/5575186299632655785383929568162090376495104) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8072214747750447/5575186299632655785383929568162090376495104) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8072214747750447/5575186299632655785383929568162090376495104) (*.f64 (sin.f64 x) (neg.f64 eps)) (+.f64 (cos.f64 eps) -1))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (*.f64 -1/2 eps)) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -7551923339196579/18446744073709551616) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 7903548407633161/9223372036854775808) (*.f64 eps (*.f64 eps -1/2)) (+.f64 (cos.f64 eps) -1))) |
(*.f64 eps (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 eps -1/2)) |
Compiled 577 to 330 computations (42.8% saved)
Compiled 551 to 236 computations (57.2% saved)
Loading profile data...