Time bar (total: 17.5s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 99.9% | 0.1% | 0 |
| 99.9% | 0% | 0.1% | 1 |
Compiled 10 to 7 computations (30% saved)
| 2.1s | 3993× | body | 1024 | valid |
| 1.9s | 2074× | body | 2048 | valid |
| 522.0ms | 1409× | body | 512 | valid |
| 129.0ms | 780× | body | 256 | 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 |
|---|---|---|
| ▶ | 39.3b | (-.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.5b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| ✓ | 2.8b | (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)
37 alts after pruning (36 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 183 | 36 | 219 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 183 | 37 | 220 |
| Status | Error | Program |
|---|---|---|
| 44.9b | (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))))) | |
| ▶ | 39.5b | (-.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
| ▶ | 38.8b | (-.f64 (cos.f64 eps) 1) |
| 39.4b | (-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| ▶ | 30.0b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
| 38.8b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 39.3b | (log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x))))) | |
| ✓ | 39.3b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 26.6b | (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 39.5b | (/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) | |
| 26.4b | (-.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)) | |
| 29.8b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 26.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 39.3b | (/.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))) | |
| 55.4b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) | |
| 26.0b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) | |
| 39.4b | (*.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)))) | |
| 39.6b | (-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x)) | |
| 26.0b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 36.0b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| ▶ | 12.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
| 26.0b | (-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 55.5b | (-.f64 (cos.f64 x) (cos.f64 x)) | |
| ▶ | 39.3b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 14.3b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) | |
| 26.1b | (fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) | |
| 49.0b | (expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 39.5b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 39.3b | (cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) | |
| 40.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) | |
| 39.3b | (-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 39.9b | (-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) | |
| 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 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 46.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 26.4b | (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))))) | |
| 26.2b | (-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x)) |
Compiled 1261 to 812 computations (35.6% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
| ✓ | 0.0b | (+.f64 x (+.f64 x eps)) |
| ✓ | 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| ✓ | 3.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 | |
|---|---|---|---|---|
| 1.0ms | eps | @ | -inf | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
| 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 | eps | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1.0ms | x | @ | 0 | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
| 1.0ms | x | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1× | batch-egg-rewrite |
| 687× | fma-def_binary64 |
| 550× | log-prod_binary64 |
| 304× | fma-neg_binary64 |
| 222× | expm1-udef_binary64 |
| 222× | log1p-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 68 |
| 1 | 352 | 28 |
| 2 | 5264 | 28 |
| 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 x (+.f64 x eps)) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 0) (cos.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 0) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 0)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 x eps)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (cos.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 x eps))) (sin.f64 (*.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))) (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cbrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) (sqrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (/.f64 (cos.f64 (*.f64 1/2 (+.f64 eps eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps (/.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 0 eps)) (/.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps eps) (/.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 eps) (sqrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (+.f64 x eps) eps (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 0 eps) (*.f64 eps (-.f64 0 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 eps (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (fma.f64 (+.f64 x eps) eps (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 eps 3) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps (-.f64 0 eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps eps)) (neg.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) (neg.f64 (fma.f64 (+.f64 x eps) eps (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps (-.f64 0 eps))) (neg.f64 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 eps 3)) (neg.f64 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (fma.f64 x x (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 x x)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 eps eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 eps) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 eps) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 eps 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 eps 3))))) (#(struct:change #<rule egg-rr> (2) ((x . eps)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (sqrt.f64 (*.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (*.f64 (sqrt.f64 x) (sqrt.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 x eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 x x (*.f64 eps (-.f64 eps x)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 x x (*.f64 eps (-.f64 eps x)))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (neg.f64 (/.f64 0 eps))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sqrt.f64 -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 1)))))) |
| 1× | egg-herbie |
| 862× | fma-def_binary64 |
| 568× | distribute-rgt-out_binary64 |
| 514× | associate-*l*_binary64 |
| 499× | associate-*r*_binary64 |
| 481× | distribute-rgt-neg-out_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 113 | 1592 |
| 1 | 335 | 1560 |
| 2 | 984 | 1357 |
| 3 | 4067 | 1325 |
| 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))) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
(+.f64 eps (*.f64 2 x)) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
eps |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(+.f64 (*.f64 2 x) eps) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
| Outputs |
|---|
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (sin.f64 (*.f64 1/2 eps)))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x x)))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 x) |
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x))) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (sin.f64 x))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps))) |
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(*.f64 1/2 (*.f64 eps (sin.f64 x))) |
(*.f64 eps (*.f64 1/2 (sin.f64 x))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) 1/4))) |
(fma.f64 eps (*.f64 1/2 (sin.f64 x)) (*.f64 (*.f64 eps (cos.f64 x)) (*.f64 eps 1/4))) |
(*.f64 eps (+.f64 (*.f64 1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 eps 1/4)))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))) |
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 (*.f64 1/2 eps) (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)))))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (fma.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))) |
(+.f64 (*.f64 eps (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps 1/4))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 x x))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 x x)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))) |
(+.f64 (*.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (sin.f64 (*.f64 1/2 eps)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
eps |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(*.f64 2 x) |
(*.f64 x 2) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(*.f64 2 x) |
(*.f64 x 2) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(*.f64 2 x) |
(*.f64 x 2) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 eps (*.f64 2 x)) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
eps |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
eps |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(+.f64 (*.f64 2 x) eps) |
(fma.f64 2 x eps) |
(fma.f64 x 2 eps) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 eps (sin.f64 x))) |
(fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (*.f64 eps (cos.f64 x)) (*.f64 eps -1/2))) |
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 -2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12))))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6) (fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (*.f64 eps (cos.f64 x)) (*.f64 eps -1/2)))) |
(-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 -2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)))))) |
(+.f64 (fma.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12) (*.f64 (sin.f64 x) (neg.f64 eps))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 4) 1/24) (*.f64 -1/2 (*.f64 eps eps))))) |
(fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (sin.f64 x)))) |
(fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 (*.f64 -2 (pow.f64 eps 3)) -1/12) eps))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(*.f64 -2 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) -2)) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) -2) (cos.f64 (*.f64 1/2 eps))) x) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)))) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 x x) -2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(+.f64 (fma.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) 1/3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)))) |
(fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 x x) -2) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x)))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 1.4b | (-.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 | (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| ✓ | 0.2b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 0.5b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) | |
| 2.8b | (cos.f64 (+.f64 x eps)) |
Compiled 37 to 8 computations (78.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 1.0ms | eps | @ | 0 | (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 0.0ms | x | @ | 0 | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
| 0.0ms | x | @ | -inf | (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 0.0ms | eps | @ | inf | (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| 1× | batch-egg-rewrite |
| 483× | log-prod_binary64 |
| 470× | fma-def_binary64 |
| 298× | pow-prod-down_binary64 |
| 286× | pow2_binary64 |
| 249× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 24 |
| 1 | 196 | 24 |
| 2 | 2969 | 24 |
| 1× | node limit |
| Inputs |
|---|
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (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 (-.f64 1 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))) (log.f64 (-.f64 1 (expm1.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)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -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 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 (+.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 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 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (expm1.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 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) 1) (+.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 1 (*.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1) (+.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (expm1.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 (expm1.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 (expm1.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 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (exp.f64 (neg.f64 (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.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)))) -1))))) |
| 1× | egg-herbie |
| 649× | associate-*r*_binary64 |
| 619× | associate-*l*_binary64 |
| 431× | associate-+l+_binary64 |
| 400× | unsub-neg_binary64 |
| 351× | associate-+r+_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 125 | 1020 |
| 1 | 395 | 988 |
| 2 | 1268 | 932 |
| 3 | 6300 | 930 |
| 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)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x)))) 1) |
(-.f64 (+.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))))) 1) |
(-.f64 (+.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)))))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.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 (*.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 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/24 (pow.f64 (sin.f64 x) 4)) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (neg.f64 (sin.f64 eps)) -1)) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(-.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 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) (*.f64 x (neg.f64 (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 (+.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 (*.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x)) (+.f64 (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1) (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 (sin.f64 x) (neg.f64 eps)) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps))) |
(*.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 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(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)))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (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 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (+.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 -1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 (sin.f64 eps) x)))) 1) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (neg.f64 (*.f64 (*.f64 x (sin.f64 eps)) (exp.f64 (+.f64 (cos.f64 eps) -1)))) 1)) |
(+.f64 (*.f64 (*.f64 x (neg.f64 (sin.f64 eps))) (exp.f64 (+.f64 (cos.f64 eps) -1))) (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(+.f64 -1 (*.f64 (+.f64 (*.f64 (sin.f64 eps) (neg.f64 x)) 1) (exp.f64 (+.f64 (cos.f64 eps) -1)))) |
(-.f64 (+.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))))) 1) |
(+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (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))))) 1)) |
(+.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 1/2 (pow.f64 (sin.f64 eps) 2))) (*.f64 x (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))) (*.f64 x (*.f64 (sin.f64 eps) (exp.f64 (+.f64 (cos.f64 eps) -1))))) (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(+.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (+.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))) (*.f64 x (sin.f64 eps))))) |
(-.f64 (+.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)))))) 1) |
(+.f64 (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))))))) -1) |
(fma.f64 (-.f64 (fma.f64 -1/6 (pow.f64 (sin.f64 eps) 3) (*.f64 (sin.f64 eps) 1/6)) (*.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))) (+.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 1/2 (pow.f64 (sin.f64 eps) 2))) (*.f64 x (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1))))) (*.f64 x (*.f64 (sin.f64 eps) (exp.f64 (+.f64 (cos.f64 eps) -1))))) (expm1.f64 (+.f64 (cos.f64 eps) -1)))) |
(+.f64 -1 (+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (+.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))) (*.f64 x (sin.f64 eps)))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (+.f64 (*.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 -1 (+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (-.f64 (*.f64 (*.f64 x x) (+.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 1/2 (pow.f64 (sin.f64 eps) 2)))) (*.f64 x (sin.f64 eps)))) (*.f64 (+.f64 (*.f64 (pow.f64 x 3) (+.f64 (*.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))))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 -1 (*.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 -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))))) |
(fma.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (neg.f64 eps))) |
(*.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 (*.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)))) (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)))))) |
(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))) (fma.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 1/6 (*.f64 1/2 (cos.f64 x))))) (*.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 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/24 (pow.f64 (sin.f64 x) 4)) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2))))))) (+.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)))) (fma.f64 (pow.f64 eps 4) (fma.f64 1/24 (cos.f64 x) (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 1/24 (pow.f64 (sin.f64 x) 4) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2)))))) (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))))))) |
(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))) (fma.f64 (pow.f64 eps 4) (fma.f64 (cos.f64 x) 1/24 (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 1/24 (pow.f64 (sin.f64 x) 4) (*.f64 -1/6 (pow.f64 (sin.f64 x) 2)))))) (fma.f64 (*.f64 eps eps) (fma.f64 1/2 (pow.f64 (sin.f64 x) 2) (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (neg.f64 eps))))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 1/6 (*.f64 1/2 (cos.f64 x))))) (fma.f64 (pow.f64 eps 4) (fma.f64 (cos.f64 x) 1/24 (+.f64 (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (*.f64 1/24 (pow.f64 (sin.f64 x) 4))) (*.f64 (pow.f64 (sin.f64 x) 2) (+.f64 -1/6 (*.f64 (cos.f64 x) -1/4))))) (*.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 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 1/6 (pow.f64 eps 3)) |
| ✓ | 0.1b | (*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
| ✓ | 0.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))) |
| ✓ | 2.9b | (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) |
Compiled 64 to 39 computations (39.1% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | x | @ | inf | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
| 1.0ms | eps | @ | 0 | (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) |
| 1.0ms | x | @ | inf | (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) |
| 1.0ms | x | @ | -inf | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
| 1.0ms | x | @ | 0 | (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) |
| 1× | batch-egg-rewrite |
| 852× | prod-diff_binary64 |
| 744× | log-prod_binary64 |
| 392× | fma-def_binary64 |
| 276× | expm1-udef_binary64 |
| 276× | log1p-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 58 |
| 1 | 321 | 58 |
| 2 | 3866 | 58 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) |
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 1/6 (pow.f64 eps 3)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x)) (*.f64 (neg.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3)) (sin.f64 x)) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3))) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps))) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3)) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 1) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2) (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3)) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2) (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x)))) (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (*.f64 -1/2 (cos.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/2 (cos.f64 x)) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/6 (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/6 (pow.f64 eps 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (pow.f64 eps 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (cbrt.f64 1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 1/6) (pow.f64 eps 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 6) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/6 (pow.f64 eps 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 3 (log.f64 eps) (log1p.f64 -5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 3 (log.f64 eps) (log1p.f64 -5/6)) 1)))))) |
| 1× | egg-herbie |
| 774× | unsub-neg_binary64 |
| 441× | associate-+l+_binary64 |
| 388× | fma-def_binary64 |
| 365× | associate-+r+_binary64 |
| 328× | fma-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 83 | 1309 |
| 1 | 223 | 1239 |
| 2 | 611 | 1179 |
| 3 | 2548 | 1152 |
| 4 | 5974 | 1152 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5))))) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 7))) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)))))) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 eps) |
(+.f64 (*.f64 -1/2 eps) (*.f64 1/4 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))) |
(+.f64 (*.f64 1/1440 (*.f64 eps (pow.f64 x 6))) (+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
| Outputs |
|---|
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)) |
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x)) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 3) -1/6))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5))))) |
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 5))))) |
(fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 5) 1/120)))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 1/120 (pow.f64 x 5)) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))))) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 7))) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)))))) |
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 7)) (*.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 5)))))) |
(fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (fma.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 7) -1/5040))))) |
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7))))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 1/120 (pow.f64 x 5))))) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(neg.f64 (*.f64 eps (sin.f64 x))) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)) |
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(neg.f64 (*.f64 eps (sin.f64 x))) |
(*.f64 eps (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))) |
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/6 (*.f64 eps (sin.f64 x))) (*.f64 -1/2 (cos.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/6 (*.f64 eps (sin.f64 x))) (*.f64 -1/2 (cos.f64 x)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(*.f64 eps (*.f64 eps -1/2)) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x)) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 eps (*.f64 eps -1/2) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x)) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 1/4 (*.f64 (*.f64 eps eps) (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 1/4)))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 x (*.f64 x 1/4))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4)))))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (*.f64 1/4 (*.f64 (*.f64 eps eps) (*.f64 x x)))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (*.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 1/4))))) |
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 x (*.f64 x 1/4))))) |
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 eps (*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4)))))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2)))) |
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))) |
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))))) |
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 eps) |
(*.f64 eps -1/2) |
(+.f64 (*.f64 -1/2 eps) (*.f64 1/4 (*.f64 eps (pow.f64 x 2)))) |
(fma.f64 -1/2 eps (*.f64 1/4 (*.f64 eps (*.f64 x x)))) |
(fma.f64 eps -1/2 (*.f64 1/4 (*.f64 eps (*.f64 x x)))) |
(*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4)))) |
(+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))) |
(fma.f64 -1/2 eps (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 (*.f64 -1/48 eps) (pow.f64 x 4)))) |
(fma.f64 eps -1/2 (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))) |
(fma.f64 eps -1/2 (*.f64 eps (+.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 -1/48 (pow.f64 x 4))))) |
(*.f64 eps (+.f64 (+.f64 -1/2 (*.f64 -1/48 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/4)))) |
(+.f64 (*.f64 1/1440 (*.f64 eps (pow.f64 x 6))) (+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))) |
(fma.f64 1/1440 (*.f64 eps (pow.f64 x 6)) (fma.f64 -1/2 eps (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 (*.f64 -1/48 eps) (pow.f64 x 4))))) |
(fma.f64 1/1440 (*.f64 eps (pow.f64 x 6)) (fma.f64 eps -1/2 (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))) |
(fma.f64 eps -1/2 (fma.f64 eps (*.f64 1/1440 (pow.f64 x 6)) (*.f64 eps (+.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 -1/48 (pow.f64 x 4)))))) |
(*.f64 eps (+.f64 (+.f64 (*.f64 -1/48 (pow.f64 x 4)) (*.f64 x (*.f64 x 1/4))) (+.f64 -1/2 (*.f64 1/1440 (pow.f64 x 6))))) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
(*.f64 -1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 -1/2 (cos.f64 x))) |
(*.f64 (cos.f64 x) (*.f64 eps -1/2)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) |
| ✓ | 0.4b | (cbrt.f64 (cos.f64 (+.f64 x eps))) |
| 2.8b | (cos.f64 (+.f64 x eps)) | |
| ✓ | 15.0b | (-.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
Compiled 55 to 16 computations (70.9% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 17.0ms | x | @ | inf | (cbrt.f64 (cos.f64 (+.f64 x eps))) |
| 2.0ms | eps | @ | 0 | (cbrt.f64 (cos.f64 (+.f64 x eps))) |
| 2.0ms | x | @ | -inf | (cbrt.f64 (cos.f64 (+.f64 x eps))) |
| 2.0ms | x | @ | 0 | (cbrt.f64 (cos.f64 (+.f64 x eps))) |
| 2.0ms | eps | @ | 0 | (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) |
| 1× | batch-egg-rewrite |
| 503× | log-prod_binary64 |
| 430× | fma-def_binary64 |
| 338× | pow-prod-down_binary64 |
| 296× | pow2_binary64 |
| 243× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 30 |
| 1 | 251 | 30 |
| 2 | 3139 | 30 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(cbrt.f64 (cos.f64 (+.f64 x eps))) |
(pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.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 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 (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 (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 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(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 (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 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) (*.f64 (cbrt.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 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 5) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 5) (*.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 (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 (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (pow.f64 (cos.f64 (+.f64 x eps)) 5/6) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (pow.f64 (cos.f64 (+.f64 x eps)) 5/6) (*.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 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 5/6) (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 5/6) (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4))) (pow.f64 (cbrt.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 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 4) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 4) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) (*.f64 (neg.f64 (cos.f64 x)) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (pow.f64 (cos.f64 (+.f64 x eps)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x eps)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.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/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 (+.f64 x eps)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 (cos.f64 (+.f64 x eps)))) 2)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4)) (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 1/6) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 5) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/3 (log.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/3 (log.f64 (cos.f64 (+.f64 x eps)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cos.f64 (+.f64 x eps)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 2/3 (log.f64 (cos.f64 (+.f64 x eps))))) 3)))))) |
| 1× | egg-herbie |
| 489× | distribute-lft-in_binary64 |
| 489× | distribute-rgt-in_binary64 |
| 452× | unswap-sqr_binary64 |
| 440× | unsub-neg_binary64 |
| 278× | fma-neg_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 206 | 2442 |
| 1 | 646 | 2380 |
| 2 | 2309 | 2354 |
| 3 | 6283 | 2342 |
| 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)) |
(pow.f64 (cos.f64 eps) 1/3) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (pow.f64 (cos.f64 eps) 1/3)) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (cos.f64 eps) 1/3))) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -1/6 (sin.f64 eps)))) (pow.f64 x 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (cos.f64 eps) 1/3)))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(pow.f64 (cos.f64 x) 1/3) |
(+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9)))) |
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (pow.f64 eps 2)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9))))) |
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (+.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3) (pow.f64 (sin.f64 x) 3))))) (pow.f64 eps 3)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (pow.f64 eps 2)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9)))))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) |
(+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)) (+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x))))) |
(+.f64 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -1/6 (sin.f64 eps)))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)) (+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x)))))) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3)) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (+.f64 (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/9) (pow.f64 (sin.f64 x) 2))))))) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (*.f64 -2/3 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (+.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3) (pow.f64 (sin.f64 x) 3))))) (pow.f64 (/.f64 1 (cos.f64 x)) 1/3))))) (+.f64 (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/9) (pow.f64 (sin.f64 x) 2)))))))) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
| 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 (+.f64 (cos.f64 eps) (*.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 (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 -1 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) (*.f64 (sin.f64 eps) (neg.f64 x))))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) x) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) x) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1)) |
(+.f64 -1 (+.f64 (+.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))))) |
(+.f64 (*.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x)) (+.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1) (cos.f64 eps))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x))))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 eps (*.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 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.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)))) |
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))) |
(fma.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) |
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) |
(pow.f64 (cos.f64 eps) 1/3) |
(cbrt.f64 (cos.f64 eps)) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (pow.f64 (cos.f64 eps) 1/3)) |
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)) (*.f64 x (sin.f64 eps))) (cbrt.f64 (cos.f64 eps))) |
(fma.f64 -1/3 (*.f64 x (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)))) (cbrt.f64 (cos.f64 eps))) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (cos.f64 eps) 1/3))) |
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)) (*.f64 x (sin.f64 eps))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (*.f64 (*.f64 x x) (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (cbrt.f64 (cos.f64 eps)))) |
(fma.f64 -1/3 (*.f64 x (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)))) (fma.f64 1/3 (*.f64 (*.f64 x x) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (cbrt.f64 (cos.f64 eps)))) |
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -1/6 (sin.f64 eps)))) (pow.f64 x 3)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (cos.f64 eps) 1/3)))) |
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)) (*.f64 x (sin.f64 eps))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (*.f64 (pow.f64 x 3) (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)) (*.f64 (sin.f64 eps) (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) -1/6))))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (*.f64 (*.f64 x x) (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (cbrt.f64 (cos.f64 eps))))) |
(fma.f64 -1/3 (*.f64 x (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)))) (fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (*.f64 (pow.f64 x 3) (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)))) (*.f64 (sin.f64 eps) -1/6))))) (fma.f64 1/3 (*.f64 (*.f64 x x) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (cbrt.f64 (cos.f64 eps))))) |
(+.f64 (fma.f64 -1/3 (*.f64 x (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/18)))) (cbrt.f64 (cos.f64 eps))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (+.f64 (*.f64 1/3 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2))))))) (*.f64 -1/3 (*.f64 (pow.f64 x 3) (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)))) -1/6)))))))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 x) 1/3) |
(cbrt.f64 (cos.f64 x)) |
(+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9)))) |
(+.f64 (cbrt.f64 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18))))) |
(fma.f64 -1/3 (*.f64 (sin.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x))) |
(fma.f64 -1/3 (*.f64 eps (*.f64 (sin.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x))) |
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (pow.f64 eps 2)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9))))) |
(fma.f64 1/3 (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))) (*.f64 (*.f64 eps eps) (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))))) (+.f64 (cbrt.f64 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))))) |
(fma.f64 1/3 (*.f64 (*.f64 eps eps) (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))))) (fma.f64 -1/3 (*.f64 (sin.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x)))) |
(fma.f64 1/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (*.f64 eps eps) (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))))) (fma.f64 -1/3 (*.f64 eps (*.f64 (sin.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x)))) |
(+.f64 (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (+.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3) (pow.f64 (sin.f64 x) 3))))) (pow.f64 eps 3)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (pow.f64 eps 2)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3))) (+.f64 (pow.f64 (cos.f64 x) 1/3) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/9)))))) |
(fma.f64 -1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (*.f64 (pow.f64 eps 3) (fma.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))))) (fma.f64 -1/6 (sin.f64 x) (*.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (pow.f64 (sin.f64 x) 3))))))) (fma.f64 1/3 (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))) (*.f64 (*.f64 eps eps) (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))))) (+.f64 (cbrt.f64 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18))))))) |
(+.f64 (fma.f64 -1/3 (*.f64 (sin.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (+.f64 (*.f64 (*.f64 -1/3 (pow.f64 eps 3)) (fma.f64 -2/3 (*.f64 (sin.f64 x) (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)))) (fma.f64 (sin.f64 x) -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (*.f64 (pow.f64 (sin.f64 x) 3) -1/27))))) (*.f64 1/3 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))))))))) |
(+.f64 (fma.f64 -1/3 (*.f64 eps (*.f64 (sin.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/18)))) (cbrt.f64 (cos.f64 x))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (+.f64 (*.f64 (*.f64 1/3 (*.f64 eps eps)) (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18))))) (*.f64 (*.f64 -1/3 (pow.f64 eps 3)) (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (*.f64 (pow.f64 (sin.f64 x) 3) -1/27)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)))) -1/6))))))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (+.f64 eps x)) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 1/3) |
(cbrt.f64 (cos.f64 (+.f64 eps x))) |
(pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 eps) 2)) |
(+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x)))) |
(+.f64 (cbrt.f64 (pow.f64 (cos.f64 eps) 2)) (*.f64 -2/3 (*.f64 (*.f64 x (sin.f64 eps)) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (pow.f64 (cos.f64 eps) 1/18))))) |
(fma.f64 -2/3 (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 x (sin.f64 eps)))) (cbrt.f64 (pow.f64 (cos.f64 eps) 2))) |
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)) (+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x))))) |
(fma.f64 (fma.f64 2/3 (*.f64 (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18))))) (*.f64 x x) (+.f64 (cbrt.f64 (pow.f64 (cos.f64 eps) 2)) (*.f64 -2/3 (*.f64 (*.f64 x (sin.f64 eps)) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (pow.f64 (cos.f64 eps) 1/18)))))) |
(fma.f64 (*.f64 x x) (fma.f64 2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18))))) (fma.f64 -2/3 (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 x (sin.f64 eps)))) (cbrt.f64 (pow.f64 (cos.f64 eps) 2)))) |
(fma.f64 (*.f64 x x) (fma.f64 2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 1/9))) (fma.f64 -2/3 (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 x (sin.f64 eps)))) (cbrt.f64 (pow.f64 (cos.f64 eps) 2)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -1/6 (sin.f64 eps)))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)) (+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 1/3) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 (cos.f64 eps) 1) 1/9) (*.f64 (sin.f64 eps) x)))))) |
(fma.f64 (fma.f64 -2/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)) (*.f64 (sin.f64 eps) (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 (sin.f64 eps) -1/6))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18))) (*.f64 (sin.f64 eps) (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2))))))) (pow.f64 x 3) (fma.f64 (fma.f64 2/3 (*.f64 (-.f64 (*.f64 (cos.f64 eps) -1/2) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18))))) (*.f64 x x) (+.f64 (cbrt.f64 (pow.f64 (cos.f64 eps) 2)) (*.f64 -2/3 (*.f64 (*.f64 x (sin.f64 eps)) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (pow.f64 (cos.f64 eps) 1/18))))))) |
(fma.f64 (pow.f64 x 3) (fma.f64 -2/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (sin.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)))) (*.f64 (sin.f64 eps) -1/6))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 -2/9 (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18)) (sin.f64 eps)) (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2))))))) (fma.f64 (*.f64 x x) (fma.f64 2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18))))) (fma.f64 -2/3 (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 x (sin.f64 eps)))) (cbrt.f64 (pow.f64 (cos.f64 eps) 2))))) |
(fma.f64 (pow.f64 x 3) (fma.f64 -2/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 5)) 1/18)))) -1/6))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 (*.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2))))) (*.f64 (*.f64 -2/9 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 8)) 1/18)))) (fma.f64 (*.f64 x x) (fma.f64 2/3 (*.f64 (fma.f64 (cos.f64 eps) -1/2 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18) (pow.f64 (/.f64 1 (cos.f64 eps)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 eps)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 eps) 4)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 1/9))) (fma.f64 -2/3 (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 (pow.f64 (cos.f64 eps) 1/18) (*.f64 x (sin.f64 eps)))) (cbrt.f64 (pow.f64 (cos.f64 eps) 2))))) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 x) 2)) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3)) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (+.f64 (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/9) (pow.f64 (sin.f64 x) 2))))))) |
(+.f64 (fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (*.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))))) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (fma.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)))) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (fma.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))) (cbrt.f64 (pow.f64 (cos.f64 x) 2)))) |
(+.f64 (*.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) 1) 1/9))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (*.f64 -2/3 (*.f64 (+.f64 (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/9) (*.f64 (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) (+.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2)) 1/3) (pow.f64 (sin.f64 x) 3))))) (pow.f64 (/.f64 1 (cos.f64 x)) 1/3))))) (+.f64 (pow.f64 (pow.f64 (cos.f64 x) 2) 1/3) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/9) (pow.f64 (sin.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/9) (pow.f64 (sin.f64 x) 2)))))))) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (fma.f64 (pow.f64 eps 3) (fma.f64 -2/9 (*.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18))) (*.f64 -2/3 (*.f64 (fma.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))))) (fma.f64 -1/6 (sin.f64 x) (*.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (pow.f64 (sin.f64 x) 3))))) (cbrt.f64 (/.f64 1 (cos.f64 x)))))) (+.f64 (cbrt.f64 (pow.f64 (cos.f64 x) 2)) (*.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 x)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (sin.f64 x) 2)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))))))) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (fma.f64 (pow.f64 eps 3) (fma.f64 -2/3 (*.f64 (fma.f64 -2/3 (*.f64 (sin.f64 x) (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)))) (fma.f64 (sin.f64 x) -1/6 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (*.f64 (pow.f64 (sin.f64 x) 3) -1/27)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 -2/9 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (sin.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18)))))) (fma.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))) (cbrt.f64 (pow.f64 (cos.f64 x) 2))))) |
(fma.f64 -2/3 (*.f64 (*.f64 eps (sin.f64 x)) (*.f64 (pow.f64 (cos.f64 x) 1/18) (pow.f64 (cos.f64 x) 1/18))) (fma.f64 (pow.f64 eps 3) (fma.f64 -2/3 (*.f64 (+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (cos.f64 x) 2))) (*.f64 (pow.f64 (sin.f64 x) 3) -1/27)) (*.f64 (sin.f64 x) (+.f64 (*.f64 -2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 5)) 1/18)))) -1/6))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 8)) 1/18))))) (fma.f64 (*.f64 eps eps) (fma.f64 2/3 (*.f64 (fma.f64 -1/2 (cos.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (sin.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (cos.f64 x)) 1/18) (pow.f64 (/.f64 1 (cos.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (cos.f64 x)))) (*.f64 (pow.f64 (sin.f64 x) 2) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (cos.f64 x) 4)) 1/18))))) (cbrt.f64 (pow.f64 (cos.f64 x) 2))))) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
(pow.f64 (pow.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) 2) 1/3) |
(cbrt.f64 (pow.f64 (cos.f64 (+.f64 eps x)) 2)) |
Compiled 29135 to 13205 computations (54.7% saved)
70 alts after pruning (68 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1223 | 54 | 1277 |
| Fresh | 17 | 14 | 31 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 2 | 5 |
| Total | 1244 | 70 | 1314 |
| Status | Error | Program |
|---|---|---|
| 30.4b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3)) | |
| ▶ | 49.3b | (*.f64 eps (*.f64 eps -1/2)) |
| ✓ | 38.8b | (-.f64 (cos.f64 eps) 1) |
| 53.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) | |
| 39.0b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| 49.7b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| 38.9b | (log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) | |
| 39.4b | (-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 38.8b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 43.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) | |
| 38.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2) | |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) | |
| 46.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 26.6b | (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))))) | |
| 49.2b | (*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) | |
| 50.0b | (/.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) | |
| 54.9b | (sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))) | |
| ✓ | 39.3b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 26.4b | (-.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)) | |
| 29.8b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 39.0b | (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) | |
| 44.9b | (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))))) | |
| 43.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) | |
| 54.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) | |
| 38.9b | (*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) | |
| 40.1b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 26.0b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 36.0b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 43.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 38.9b | (log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) | |
| 36.0b | (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) | |
| ▶ | 38.9b | (*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2) |
| 38.8b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) | |
| 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) | |
| 39.9b | (+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) | |
| ▶ | 38.8b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 34.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) | |
| 33.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) | |
| 32.7b | (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3) | |
| 26.0b | (-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) | |
| 55.5b | (-.f64 (cos.f64 x) (cos.f64 x)) | |
| ▶ | 12.9b | (log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 26.2b | (-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x)) | |
| 54.9b | (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) | |
| 53.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) | |
| 44.9b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3)))) | |
| 38.9b | (*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) -2) | |
| 26.1b | (log1p.f64 (expm1.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) | |
| 29.9b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) | |
| 39.5b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 14.3b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) | |
| 47.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| 39.0b | (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) | |
| 26.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 49.0b | (expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 30.0b | (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) | |
| 32.9b | (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) | |
| 26.4b | (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))))) | |
| 13.2b | (*.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) | |
| 32.3b | (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) | |
| 48.5b | (*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) | |
| 29.8b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) | |
| 12.9b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) | |
| ▶ | 40.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) |
| 45.3b | (*.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.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 37.4b | (*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
Compiled 2439 to 1787 computations (26.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)) |
| ✓ | 0.2b | (log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
| 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) | |
| 3.0b | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
Compiled 129 to 55 computations (57.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 6.0ms | eps | @ | 0 | (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)) |
| 3.0ms | x | @ | 0 | (expm1.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 | (expm1.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 | @ | 0 | (log1p.f64 (expm1.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 | (expm1.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 |
| 699× | fma-def_binary64 |
| 315× | fma-neg_binary64 |
| 237× | expm1-udef_binary64 |
| 237× | log1p-udef_binary64 |
| 186× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 17 | 54 |
| 1 | 374 | 26 |
| 2 | 5466 | 26 |
| 1× | node limit |
| Inputs |
|---|
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(expm1.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 (log1p.f64 (pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 2) (expm1.f64 (*.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 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 2))) (log.f64 (-.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))))) (#(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 (*.f64 (sin.f64 (*.f64 eps 1/2)) -2) (sin.f64 (*.f64 eps 1/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 log.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x 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)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 2) (cbrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) (sqrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) 3) 1) (fma.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (+.f64 1 (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) -1) (+.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.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 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.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 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) -1))))) |
| 1× | egg-herbie |
| 414× | associate-+l+_binary64 |
| 397× | *-commutative_binary64 |
| 390× | unswap-sqr_binary64 |
| 379× | associate-+r+_binary64 |
| 327× | distribute-rgt-neg-out_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 145 | 1632 |
| 1 | 460 | 1499 |
| 2 | 1557 | 1316 |
| 3 | 4561 | 1306 |
| 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)))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.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 -2 (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) (+.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 4) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))) (*.f64 1/24 (pow.f64 (sin.f64 x) 4))))))) (+.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 -2 (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 x) 2)) (*.f64 -1/2 (cos.f64 x))))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) |
(-.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) 1) |
(-.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (+.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) 1) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -4/3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 3))))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (pow.f64 x 3))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (+.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
| Outputs |
|---|
(*.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 (*.f64 eps eps) (cos.f64 x)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 eps (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (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)) (-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6))) |
(fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (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 (-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) |
(+.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/2)))) (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6) (*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(*.f64 -2 (+.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (+.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 x (cos.f64 (*.f64 eps 1/2))))) |
(+.f64 (*.f64 -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 x (cos.f64 (*.f64 eps 1/2))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 -2 (*.f64 x x)))) |
(+.f64 (*.f64 x (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 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 x (cos.f64 (*.f64 eps 1/2))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 -2 (*.f64 x x)))) |
(+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (+.f64 (*.f64 x -2) (*.f64 1/3 (pow.f64 x 3)))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 -2 (*.f64 x x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 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 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x)))) |
(*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(+.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 -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))))) |
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2))) (*.f64 (sin.f64 x) (neg.f64 eps))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2)))) (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 -2 (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) (+.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 (sin.f64 x) (cos.f64 x)) (*.f64 -2 (*.f64 (sin.f64 x) -1/12)))) (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)))))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (sin.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) 1/6))) (fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2))) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 (cos.f64 x) 1/2) 1/6))) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2)))) (sin.f64 x)))) |
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/24 (cos.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/8 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))) (*.f64 1/24 (pow.f64 (sin.f64 x) 4))))))) (+.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 -2 (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) (+.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 4) (fma.f64 1/24 (cos.f64 x) (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 2 (*.f64 (sin.f64 x) (*.f64 (sin.f64 x) -1/12)) (*.f64 1/24 (pow.f64 (sin.f64 x) 4)))))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (sin.f64 x) (cos.f64 x)) (*.f64 -2 (*.f64 (sin.f64 x) -1/12)))) (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))))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 (cos.f64 x) 1/24 (fma.f64 -1/4 (*.f64 (cos.f64 x) (pow.f64 (sin.f64 x) 2)) (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 2 (*.f64 (pow.f64 (sin.f64 x) 2) -1/12) (*.f64 1/24 (pow.f64 (sin.f64 x) 4)))))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (fma.f64 1/2 (*.f64 (sin.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) 1/6))) (fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2))) (*.f64 (sin.f64 x) (neg.f64 eps))))) |
(fma.f64 (pow.f64 eps 4) (+.f64 (fma.f64 1/8 (pow.f64 (cos.f64 x) 2) (fma.f64 2 (*.f64 (pow.f64 (sin.f64 x) 2) -1/12) (*.f64 1/24 (pow.f64 (sin.f64 x) 4)))) (*.f64 (cos.f64 x) (+.f64 1/24 (*.f64 (pow.f64 (sin.f64 x) 2) -1/4)))) (fma.f64 (pow.f64 eps 3) (fma.f64 -1/6 (pow.f64 (sin.f64 x) 3) (*.f64 (sin.f64 x) (+.f64 (*.f64 (cos.f64 x) 1/2) 1/6))) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 1/2 (pow.f64 (sin.f64 x) 2)))) (sin.f64 x))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) |
(expm1.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(-.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) 1) |
(+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) (expm1.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) |
(fma.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) (expm1.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) |
(+.f64 -1 (*.f64 (+.f64 (*.f64 x (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))))) 1) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) |
(fma.f64 (+.f64 (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) 1) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) -1) |
(-.f64 (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (+.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) 1) |
(+.f64 (+.f64 (fma.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 (*.f64 x x) (fma.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) -1) |
(+.f64 -1 (fma.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) (*.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) 1) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) |
(+.f64 -1 (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (+.f64 (*.f64 x (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))))) (+.f64 1 (*.f64 (*.f64 x x) (*.f64 (+.f64 (*.f64 2 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) 1) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))))) |
(fma.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (+.f64 (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) (+.f64 1 (*.f64 (*.f64 x x) (*.f64 (+.f64 (*.f64 2 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) 1) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) -1) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 -2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (cos.f64 (*.f64 1/2 eps)))) (*.f64 -4/3 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 3))))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (pow.f64 x 3))) (+.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) (+.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (exp.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (cos.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))))) 1) |
(+.f64 (fma.f64 (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (fma.f64 -2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)) (*.f64 -4/3 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (cos.f64 (*.f64 eps 1/2)) 3))))) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (+.f64 (fma.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 (*.f64 x x) (fma.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) -1) |
(+.f64 -1 (fma.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (*.f64 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 3) -4/3)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) 1/3) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3))))) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (fma.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) (*.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 2 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))) 1) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) |
(+.f64 (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (+.f64 (*.f64 x (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))))) (+.f64 1 (*.f64 (*.f64 x x) (*.f64 (+.f64 (*.f64 2 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) 1) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)))))) (fma.f64 (pow.f64 x 3) (*.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (+.f64 (*.f64 -2 (cos.f64 (*.f64 eps 1/2))) (*.f64 -4/3 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 3)))))) -1)) |
(fma.f64 (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (+.f64 (*.f64 -2 (cos.f64 (*.f64 eps 1/2))) (*.f64 -4/3 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 3))))) (*.f64 (pow.f64 x 3) (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) (fma.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (+.f64 (*.f64 (*.f64 x (cos.f64 (*.f64 eps 1/2))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2)))) (+.f64 1 (*.f64 (*.f64 x x) (*.f64 (+.f64 (*.f64 2 (pow.f64 (cos.f64 (*.f64 eps 1/2)) 2)) 1) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))) -1)) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (exp.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))))) 1) |
(expm1.f64 (*.f64 (*.f64 -2 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
(expm1.f64 (*.f64 -2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (fma.f64 eps 1/2 x))))) |
(expm1.f64 (*.f64 (sin.f64 (fma.f64 eps 1/2 x)) (*.f64 -2 (sin.f64 (*.f64 eps 1/2))))) |
Compiled 12 to 8 computations (33.3% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| ✓ | 0.3b | (pow.f64 (+.f64 (cos.f64 eps) -1) 3) |
| ✓ | 1.4b | (+.f64 (cos.f64 eps) -1) |
Compiled 24 to 16 computations (33.3% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | eps | @ | inf | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 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) |
| 1.0ms | eps | @ | 0 | (+.f64 (cos.f64 eps) -1) |
| 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.0b | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| ✓ | 0.3b | (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
| ✓ | 1.6b | (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))) |
| 1.0ms | eps | @ | 0 | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| 1.0ms | eps | @ | -inf | (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
| 1× | 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.1b | (*.f64 x (sin.f64 eps)) |
| ✓ | 1.4b | (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) |
| ✓ | 2.1b | (-.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) |
| ✓ | 8.5b | (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
Compiled 105 to 61 computations (41.9% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 6.0ms | eps | @ | inf | (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
| 1.0ms | x | @ | 0 | (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
| 1.0ms | eps | @ | inf | (-.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) |
| 1.0ms | eps | @ | -inf | (-.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) |
| 1.0ms | x | @ | 0 | (*.f64 x (sin.f64 eps)) |
| 1× | batch-egg-rewrite |
| 538× | fma-neg_binary64 |
| 331× | log1p-udef_binary64 |
| 330× | expm1-udef_binary64 |
| 259× | log-pow_binary64 |
| 210× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 62 |
| 1 | 419 | 53 |
| 2 | 5648 | 53 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 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 1/2 (*.f64 -1/2 (cos.f64 eps))) |
(*.f64 x (sin.f64 eps)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 x x)) (*.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) 1/2) (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3))) (*.f64 x x)) (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2))) (*.f64 x x)) (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x x) (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3)))) (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x x) (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2)))) (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sqrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 x 4) (pow.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (*.f64 x x)) (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (-.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) (pow.f64 (cbrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) 2) (cbrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) (sqrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 3) -1) (/.f64 1 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) -1) (/.f64 1 (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 1) (-.f64 (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1))) (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1)) (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 3) -1) (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 3) -1) (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) (-.f64 1 (*.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) -1) (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 3) -1)) (neg.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 2) -1)) (neg.f64 (+.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (+.f64 (cos.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 (*.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))) (-.f64 (cos.f64 eps) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 eps))) (exp.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1))) (exp.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1))) (+.f64 1 (expm1.f64 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (+.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) -1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 2) (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 2) (*.f64 (cbrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) (*.f64 (sqrt.f64 (+.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) (+.f64 (*.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x)) (fma.f64 x (sin.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (-.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) (cos.f64 eps))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))) 2)) (/.f64 1 (-.f64 (cos.f64 eps) (fma.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x x) (*.f64 x (sin.f64 eps))))) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1/4 (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) (/.f64 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2)) (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/2 (cos.f64 eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) 2) (cbrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sqrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3))) (/.f64 1 (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2))) (/.f64 1 (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2))) (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3))) (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3))) (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2)) (-.f64 1/4 (*.f64 -1/4 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2))) (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1/8 (*.f64 -1/8 (pow.f64 (cos.f64 eps) 3)))) (neg.f64 (+.f64 1/4 (*.f64 (*.f64 -1/2 (cos.f64 eps)) (fma.f64 -1/2 (cos.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2)))) (neg.f64 (-.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 1/4 (pow.f64 (cos.f64 eps) 2) -1/4) (fma.f64 -1/2 (cos.f64 eps) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -1/2 (cos.f64 eps) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (cos.f64 eps) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) -1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 (cos.f64 eps)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/4 (pow.f64 (cos.f64 eps) 2))) (cbrt.f64 (*.f64 -1/2 (cos.f64 eps))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -1/2 (cos.f64 eps))) (sqrt.f64 (*.f64 -1/2 (cos.f64 eps))) 1/2))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (sin.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (sin.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (sin.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (*.f64 x (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (sin.f64 eps) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (sin.f64 eps))) 1)))))) |
| 1× | egg-herbie |
| 583× | fma-def_binary64 |
| 552× | distribute-lft-out_binary64 |
| 423× | unswap-sqr_binary64 |
| 396× | distribute-rgt-out_binary64 |
| 367× | associate-*l*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 93 | 929 |
| 1 | 261 | 831 |
| 2 | 773 | 783 |
| 3 | 3091 | 765 |
| 4 | 7267 | 765 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))) |
(+.f64 (*.f64 1/1440 (*.f64 (pow.f64 eps 6) (pow.f64 x 2))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/80640 (*.f64 (pow.f64 eps 8) (pow.f64 x 2))) (+.f64 (*.f64 1/1440 (*.f64 (pow.f64 eps 6) (pow.f64 x 2))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 -1 (*.f64 eps x)) |
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2))) |
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2)))) |
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 1/24 (*.f64 -1/48 (pow.f64 x 2)))) (+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2))))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
(+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))) |
(*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
(+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 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))))) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 (sin.f64 eps) x) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) x)) (+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x)))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) x)) (+.f64 (*.f64 eps x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) x))))) |
| Outputs |
|---|
(*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))) |
(*.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 x x)) |
(*.f64 1/4 (*.f64 eps (*.f64 eps (*.f64 x x)))) |
(*.f64 x (*.f64 (*.f64 (*.f64 eps eps) x) 1/4)) |
(*.f64 1/4 (*.f64 (*.f64 eps x) (*.f64 eps x))) |
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))) |
(fma.f64 -1/48 (*.f64 (*.f64 x x) (pow.f64 eps 4)) (*.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 x x))) |
(*.f64 (*.f64 x x) (fma.f64 1/4 (*.f64 eps eps) (*.f64 -1/48 (pow.f64 eps 4)))) |
(+.f64 (*.f64 1/1440 (*.f64 (pow.f64 eps 6) (pow.f64 x 2))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))) |
(fma.f64 1/1440 (*.f64 (*.f64 x x) (pow.f64 eps 6)) (fma.f64 -1/48 (*.f64 (*.f64 x x) (pow.f64 eps 4)) (*.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 x x)))) |
(fma.f64 1/1440 (*.f64 (*.f64 x x) (pow.f64 eps 6)) (*.f64 (*.f64 x x) (fma.f64 1/4 (*.f64 eps eps) (*.f64 -1/48 (pow.f64 eps 4))))) |
(*.f64 (*.f64 x x) (fma.f64 1/4 (*.f64 eps eps) (fma.f64 -1/48 (pow.f64 eps 4) (*.f64 1/1440 (pow.f64 eps 6))))) |
(+.f64 (*.f64 -1/80640 (*.f64 (pow.f64 eps 8) (pow.f64 x 2))) (+.f64 (*.f64 1/1440 (*.f64 (pow.f64 eps 6) (pow.f64 x 2))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (pow.f64 x 2))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))) |
(fma.f64 -1/80640 (*.f64 (*.f64 x x) (pow.f64 eps 8)) (fma.f64 1/1440 (*.f64 (*.f64 x x) (pow.f64 eps 6)) (fma.f64 -1/48 (*.f64 (*.f64 x x) (pow.f64 eps 4)) (*.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 x x))))) |
(+.f64 (*.f64 (*.f64 x x) (fma.f64 1/4 (*.f64 eps eps) (*.f64 -1/48 (pow.f64 eps 4)))) (*.f64 (*.f64 x x) (fma.f64 1/1440 (pow.f64 eps 6) (*.f64 -1/80640 (pow.f64 eps 8))))) |
(*.f64 (*.f64 x x) (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)))))) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 (pow.f64 x 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(*.f64 -1 (*.f64 eps x)) |
(neg.f64 (*.f64 eps x)) |
(*.f64 eps (neg.f64 x)) |
(+.f64 (*.f64 -1 (*.f64 eps x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2))) |
(fma.f64 -1 (*.f64 eps x) (*.f64 (*.f64 eps eps) (fma.f64 1/4 (*.f64 x x) -1/2))) |
(-.f64 (*.f64 eps (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2))) (*.f64 eps x)) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2)))) |
(fma.f64 -1 (*.f64 eps x) (fma.f64 1/6 (*.f64 x (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (fma.f64 1/4 (*.f64 x x) -1/2)))) |
(-.f64 (fma.f64 (*.f64 eps eps) (fma.f64 1/4 (*.f64 x x) -1/2) (*.f64 x (*.f64 1/6 (pow.f64 eps 3)))) (*.f64 eps x)) |
(fma.f64 x (*.f64 1/6 (pow.f64 eps 3)) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x))) |
(fma.f64 eps (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) (*.f64 x (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) |
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 1/24 (*.f64 -1/48 (pow.f64 x 2)))) (+.f64 (*.f64 -1 (*.f64 eps x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 1/4 (pow.f64 x 2)) 1/2))))) |
(fma.f64 (pow.f64 eps 4) (+.f64 1/24 (*.f64 (*.f64 x x) -1/48)) (fma.f64 -1 (*.f64 eps x) (fma.f64 1/6 (*.f64 x (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (fma.f64 1/4 (*.f64 x x) -1/2))))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 (*.f64 x x) -1/48 1/24) (-.f64 (fma.f64 (*.f64 eps eps) (fma.f64 1/4 (*.f64 x x) -1/2) (*.f64 x (*.f64 1/6 (pow.f64 eps 3)))) (*.f64 eps x))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 x (*.f64 x -1/48) 1/24) (fma.f64 x (*.f64 1/6 (pow.f64 eps 3)) (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)))) |
(fma.f64 (pow.f64 eps 4) (fma.f64 x (*.f64 x -1/48) 1/24) (fma.f64 eps (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) (*.f64 x (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (+.f64 (*.f64 -1 (*.f64 (sin.f64 eps) x)) (+.f64 (cos.f64 eps) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(+.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (+.f64 (cos.f64 eps) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))))) -1) |
(+.f64 -1 (-.f64 (fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))) |
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps)) -1)) |
(-.f64 (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)) |
(fma.f64 x (neg.f64 (sin.f64 eps)) (+.f64 (cos.f64 eps) -1)) |
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)) |
(*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))) |
(fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) |
(fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x (neg.f64 (sin.f64 eps)))) |
(*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps))) |
(*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)) |
(*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps)))) |
(*.f64 x (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2))) |
(*.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2)) |
(+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))) |
(fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))))) |
(fma.f64 (*.f64 x x) (fma.f64 -1/2 (cos.f64 eps) 1/2) (*.f64 x (neg.f64 (sin.f64 eps)))) |
(*.f64 x (-.f64 (*.f64 x (fma.f64 -1/2 (cos.f64 eps) 1/2)) (sin.f64 eps))) |
(*.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))) |
(+.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)))) |
(+.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))))) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 (sin.f64 eps) x) |
(*.f64 x (sin.f64 eps)) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x))) |
(fma.f64 eps x (*.f64 (*.f64 x (pow.f64 eps 3)) -1/6)) |
(*.f64 x (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))) |
(*.f64 x (fma.f64 (pow.f64 eps 3) -1/6 eps)) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) x)) (+.f64 (*.f64 eps x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x)))) |
(fma.f64 1/120 (*.f64 x (pow.f64 eps 5)) (fma.f64 eps x (*.f64 (*.f64 x (pow.f64 eps 3)) -1/6))) |
(fma.f64 1/120 (*.f64 x (pow.f64 eps 5)) (*.f64 x (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))) |
(*.f64 x (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (fma.f64 1/120 (pow.f64 eps 5) eps))) |
(*.f64 x (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 (pow.f64 eps 3) -1/6 eps))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) x)) (+.f64 (*.f64 eps x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) x)) (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) x))))) |
(fma.f64 1/120 (*.f64 x (pow.f64 eps 5)) (fma.f64 eps x (fma.f64 -1/6 (*.f64 x (pow.f64 eps 3)) (*.f64 -1/5040 (*.f64 x (pow.f64 eps 7)))))) |
(fma.f64 1/120 (*.f64 x (pow.f64 eps 5)) (fma.f64 eps x (*.f64 x (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 -1/5040 (pow.f64 eps 7)))))) |
(*.f64 x (+.f64 (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 -1/5040 (pow.f64 eps 7))) (fma.f64 1/120 (pow.f64 eps 5) eps))) |
(*.f64 x (+.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (fma.f64 -1/5040 (pow.f64 eps 7) (*.f64 (pow.f64 eps 3) -1/6)))) |
Compiled 10798 to 7337 computations (32.1% saved)
72 alts after pruning (68 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 480 | 13 | 493 |
| Fresh | 8 | 55 | 63 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 4 | 6 |
| Total | 491 | 72 | 563 |
| Status | Error | Program |
|---|---|---|
| 39.1b | (cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) | |
| 53.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) | |
| 30.4b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3)) | |
| ✓ | 49.3b | (*.f64 eps (*.f64 eps -1/2)) |
| ✓ | 38.8b | (-.f64 (cos.f64 eps) 1) |
| 39.0b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| 49.7b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| 38.9b | (log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) | |
| 39.4b | (-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 39.0b | (*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) | |
| 38.8b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 43.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) | |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) | |
| 46.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 26.6b | (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))))) | |
| 49.2b | (*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) | |
| 50.0b | (/.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) | |
| ✓ | 39.3b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 26.4b | (-.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)) | |
| 35.9b | (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) | |
| 29.8b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 39.0b | (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) | |
| 44.9b | (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))))) | |
| 43.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) | |
| 32.9b | (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) | |
| 54.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) | |
| 38.9b | (*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) | |
| 40.1b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 37.4b | (*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) | |
| 26.0b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 36.0b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 43.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 38.9b | (log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) | |
| 36.0b | (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) | |
| 38.8b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) | |
| ▶ | 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
| 54.9b | (sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) | |
| 39.9b | (+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) | |
| ✓ | 38.8b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 34.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) | |
| 32.3b | (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) | |
| ▶ | 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
| 33.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) | |
| 26.0b | (-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 54.9b | (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) | |
| 53.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) | |
| 44.9b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3)))) | |
| 26.1b | (log1p.f64 (expm1.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) | |
| 29.9b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) | |
| 26.2b | (-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x)) | |
| 39.5b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| ▶ | 14.3b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
| 47.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| 39.0b | (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) | |
| 26.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 49.0b | (expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 40.4b | (-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) | |
| 30.0b | (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) | |
| 26.4b | (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))))) | |
| 13.2b | (*.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) | |
| 55.5b | (*.f64 (log.f64 1) -2) | |
| 54.9b | (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) | |
| ▶ | 12.9b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| 48.5b | (*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) | |
| 34.9b | (log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) | |
| 45.8b | (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) | |
| 29.8b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) | |
| 45.3b | (*.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) | |
| ▶ | 51.6b | (*.f64 eps (neg.f64 x)) |
| 40.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
Compiled 2437 to 1782 computations (26.9% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| ✓ | 0.3b | (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
| ✓ | 3.0b | (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
Compiled 64 to 47 computations (26.6% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | eps | @ | 0 | (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
| 1.0ms | eps | @ | -inf | (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
| 1.0ms | eps | @ | -inf | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| 1.0ms | eps | @ | inf | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| 1.0ms | eps | @ | inf | (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
| 1× | batch-egg-rewrite |
| 709× | log-prod_binary64 |
| 455× | fma-def_binary64 |
| 370× | pow2_binary64 |
| 257× | pow1/3_binary64 |
| 257× | expm1-udef_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 55 |
| 1 | 282 | 55 |
| 2 | 3733 | 49 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2)))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (*.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) 2) (/.f64 (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 1/2 eps) (*.f64 1/2 (fma.f64 x 2 eps)))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 1/2 eps)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 (cos.f64 (*.f64 1/2 (-.f64 (fma.f64 x 2 eps) eps))) (cos.f64 (*.f64 1/2 (+.f64 (fma.f64 x 2 eps) eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 1)))))) |
| 1× | egg-herbie |
| 875× | fma-def_binary64 |
| 794× | unsub-neg_binary64 |
| 539× | distribute-rgt-out_binary64 |
| 455× | associate-*l*_binary64 |
| 419× | distribute-lft-out_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 112 | 1343 |
| 1 | 336 | 1231 |
| 2 | 1001 | 1076 |
| 3 | 3745 | 1044 |
| 4 | 7344 | 1044 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 x) |
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(*.f64 1/2 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
| Outputs |
|---|
(sin.f64 x) |
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x))) |
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))) |
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x))) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) |
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) |
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))) |
(fma.f64 x (cos.f64 (*.f64 eps -1/2)) (sin.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)))) |
(fma.f64 x (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (sin.f64 (*.f64 1/2 eps)))) |
(fma.f64 x (cos.f64 (*.f64 eps -1/2)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps)))) |
(fma.f64 x (cos.f64 (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))) |
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x))))) |
(+.f64 (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))) |
(fma.f64 x (cos.f64 (*.f64 eps -1/2)) (fma.f64 (cos.f64 (*.f64 eps -1/2)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 eps -1/2)))) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) |
(sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(sin.f64 (fma.f64 1/2 eps x)) |
(*.f64 1/2 (*.f64 eps (sin.f64 x))) |
(*.f64 1/2 (*.f64 (sin.f64 x) eps)) |
(*.f64 (sin.f64 x) (*.f64 1/2 eps)) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 (sin.f64 x) eps))) |
(fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)))) |
(fma.f64 (sin.f64 x) (*.f64 1/2 eps) (*.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) 1/4))) |
(*.f64 eps (+.f64 (*.f64 (sin.f64 x) 1/2) (*.f64 (cos.f64 x) (*.f64 eps 1/4)))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 (sin.f64 x) eps)))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) 1/4) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12)))) |
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) |
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 (sin.f64 x) eps))))) |
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 1/2 (*.f64 (sin.f64 x) eps) (*.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)))))) |
(fma.f64 (cos.f64 x) (*.f64 (*.f64 eps eps) 1/4) (fma.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))))) |
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 1/2 eps) (*.f64 (pow.f64 eps 3) -1/12))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x))))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (sin.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))) |
(fma.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps -1/2))) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))) |
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) |
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))) |
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x (*.f64 x -1/2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (fma.f64 (cos.f64 (*.f64 eps -1/2)) (*.f64 -1/6 (pow.f64 x 3)) (sin.f64 (*.f64 1/2 eps)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (sin.f64 (*.f64 eps -1/2))))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 -1/2 (fma.f64 -1 eps (*.f64 x -2)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))) |
(*.f64 -1 (*.f64 eps (sin.f64 x))) |
(*.f64 (neg.f64 eps) (sin.f64 x)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 (cos.f64 x) -1/2)) (*.f64 (sin.f64 x) eps)) |
(-.f64 (*.f64 eps (*.f64 eps (*.f64 (cos.f64 x) -1/2))) (*.f64 (sin.f64 x) eps)) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12)))) |
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 (sin.f64 x) -1/12) (*.f64 (pow.f64 eps 3) -2)) (*.f64 (sin.f64 x) eps))) |
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (-.f64 (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) 1/6) (*.f64 (sin.f64 x) eps))) |
(-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))) |
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 -2 (pow.f64 eps 3)) (*.f64 (sin.f64 x) -1/12))))) |
(+.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) -1/12) (*.f64 (pow.f64 eps 3) -2)) (*.f64 (sin.f64 x) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 4) 1/24) (*.f64 (*.f64 eps eps) -1/2)))) |
(-.f64 (fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) 1/6)) (*.f64 (sin.f64 x) eps)) |
(fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 (*.f64 (pow.f64 eps 3) -2) -1/12) eps))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 eps) (*.f64 -2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))) |
(*.f64 -2 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 x (cos.f64 (*.f64 eps -1/2)) (sin.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))) |
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps))))))) |
(+.f64 (*.f64 -2 (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)))) |
(fma.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 eps -1/2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/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 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x (cos.f64 (*.f64 1/2 eps)))))))) |
(+.f64 (fma.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (*.f64 x (cos.f64 (*.f64 1/2 eps))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)))) |
(fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x)) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps -1/2))) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/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 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))) |
(*.f64 (*.f64 -2 (sin.f64 (*.f64 1/2 eps))) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))) |
Compiled 10 to 4 computations (60% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (expm1.f64 (-.f64 (cos.f64 eps) 1)) |
| ✓ | 0.2b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
| 1.4b | (-.f64 (cos.f64 eps) 1) |
Compiled 21 to 13 computations (38.1% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (expm1.f64 (-.f64 (cos.f64 eps) 1)) |
| 0.0ms | eps | @ | 0 | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
| 0.0ms | eps | @ | -inf | (expm1.f64 (-.f64 (cos.f64 eps) 1)) |
| 0.0ms | eps | @ | inf | (expm1.f64 (-.f64 (cos.f64 eps) 1)) |
| 0.0ms | eps | @ | inf | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
| 1× | batch-egg-rewrite |
| 579× | pow1_binary64 |
| 538× | add-log-exp_binary64 |
| 538× | expm1-log1p-u_binary64 |
| 537× | log1p-expm1-u_binary64 |
| 527× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 14 |
| 1 | 126 | 14 |
| 2 | 1490 | 14 |
| 1× | node limit |
| Inputs |
|---|
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
(expm1.f64 (-.f64 (cos.f64 eps) 1)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 3) (+.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 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) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(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 exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 2) (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) (sqrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) 3) 1) (+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (exp.f64 (+.f64 (cos.f64 eps) -1))) (+.f64 1 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (exp.f64 (+.f64 (cos.f64 eps) -1))) 1) (+.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))))) |
| 1× | egg-herbie |
| 902× | distribute-rgt-out_binary64 |
| 620× | fma-def_binary64 |
| 565× | associate-*l*_binary64 |
| 520× | distribute-lft-in_binary64 |
| 434× | sqr-pow_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 41 | 252 |
| 1 | 101 | 252 |
| 2 | 226 | 252 |
| 3 | 719 | 252 |
| 4 | 3407 | 252 |
| 5 | 5312 | 252 |
| 6 | 6312 | 252 |
| 7 | 6649 | 252 |
| 8 | 6979 | 252 |
| 9 | 7348 | 252 |
| 10 | 7801 | 252 |
| 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/2 (pow.f64 eps 2)) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -31/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 379/40320 (pow.f64 eps 8)) (*.f64 -31/720 (pow.f64 eps 6))))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
| Outputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/24 (pow.f64 eps 4)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 1/40320 (pow.f64 eps 8) (*.f64 -1/2 (*.f64 eps eps))))) |
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(fma.f64 1/6 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 4) 1/6)) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/6) -1/2))) |
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/6) -1/2)) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -31/720 (pow.f64 eps 6)))) |
(fma.f64 1/6 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 6) -31/720))) |
(fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 -1/2 (*.f64 eps eps)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 4) 1/6))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 (*.f64 (pow.f64 eps 6) -31/720))) |
(+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 379/40320 (pow.f64 eps 8)) (*.f64 -31/720 (pow.f64 eps 6))))) |
(fma.f64 1/6 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 379/40320 (pow.f64 eps 8) (*.f64 (pow.f64 eps 6) -31/720)))) |
(fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 8) 379/40320)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 (pow.f64 eps 6) -31/720 (*.f64 (pow.f64 eps 8) 379/40320)))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| ✓ | 0.3b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
| ✓ | 1.3b | (-.f64 (cos.f64 eps) (cos.f64 x)) |
Compiled 26 to 7 computations (73.1% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | eps | @ | inf | (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| 1.0ms | eps | @ | 0 | (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| 1.0ms | x | @ | 0 | (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| 0.0ms | eps | @ | -inf | (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| 0.0ms | eps | @ | 0 | (-.f64 (cos.f64 eps) (cos.f64 x)) |
| 1× | batch-egg-rewrite |
| 925× | pow1_binary64 |
| 861× | expm1-log1p-u_binary64 |
| 860× | add-log-exp_binary64 |
| 860× | log1p-expm1-u_binary64 |
| 843× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 26 |
| 1 | 160 | 26 |
| 2 | 2231 | 26 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 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 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 eps) (cos.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (sin.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (sin.f64 (*.f64 (+.f64 eps x) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 eps x) 1/2))) (sin.f64 (*.f64 (+.f64 eps x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x)))) (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x))) (*.f64 (cos.f64 eps) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x)))) (-.f64 (cos.f64 eps) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) (neg.f64 (cos.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 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 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 eps) (cos.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 eps) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 3) (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))) (/.f64 (pow.f64 (cos.f64 x) 3) (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) (cos.f64 x))) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (sin.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (sin.f64 (*.f64 (+.f64 eps x) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 eps x) 1/2))) (sin.f64 (*.f64 (+.f64 eps x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x)))) (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 x) (+.f64 (cos.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x))) (*.f64 (cos.f64 eps) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x)))) (-.f64 (cos.f64 eps) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 eps) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) (neg.f64 (cos.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) (pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3) 1) (+.f64 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) (+.f64 1 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) 1) (+.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))))))))) |
| 1× | egg-herbie |
| 529× | cancel-sign-sub-inv_binary64 |
| 459× | distribute-lft-out_binary64 |
| 459× | fma-def_binary64 |
| 414× | *-commutative_binary64 |
| 291× | +-commutative_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 84 | 852 |
| 1 | 234 | 812 |
| 2 | 671 | 768 |
| 3 | 2510 | 748 |
| 4 | 5053 | 744 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 1 (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (pow.f64 eps 6))))) (cos.f64 x)) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 1/2 (pow.f64 x 2))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/24 (pow.f64 x 4)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/24 (pow.f64 x 4)) (*.f64 1/720 (pow.f64 x 6))))) 1) |
(-.f64 1 (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (pow.f64 eps 6))))) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) 1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 1/2 (pow.f64 x 2))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/24 (pow.f64 x 4)))) 1) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/24 (pow.f64 x 4)) (*.f64 1/720 (pow.f64 x 6))))) 1) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (exp.f64 (-.f64 1 (cos.f64 x))) 1) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x)))) 1) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x))))) 1) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 -31/720 (*.f64 (pow.f64 eps 6) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x)))))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (exp.f64 (-.f64 (cos.f64 eps) 1))) 1) |
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (+.f64 (*.f64 1/12 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 4))) (exp.f64 (-.f64 (cos.f64 eps) 1)))) 1) |
(-.f64 (+.f64 (*.f64 1/720 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (+.f64 (*.f64 1/12 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 4))) (exp.f64 (-.f64 (cos.f64 eps) 1))))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
| Outputs |
|---|
(-.f64 1 (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1) (cos.f64 x)) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) |
(fma.f64 eps (*.f64 -1/2 eps) (-.f64 1 (cos.f64 x))) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) 1)) (cos.f64 x)) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) 1)) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (pow.f64 eps 6))))) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 -1/720 (pow.f64 eps 6)))) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) 1))) (cos.f64 x)) |
(fma.f64 1/24 (pow.f64 eps 4) (-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) 1)) (cos.f64 x))) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) 1))) (cos.f64 x)) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 1/2 (pow.f64 x 2))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 1/2 (*.f64 x x)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 1/2 (*.f64 x x) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x 1/2) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/24 (pow.f64 x 4)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/2 (*.f64 x x) (*.f64 -1/24 (pow.f64 x 4))) 1)) |
(+.f64 (fma.f64 1/2 (*.f64 x x) (cos.f64 eps)) (-.f64 (*.f64 -1/24 (pow.f64 x 4)) 1)) |
(+.f64 (fma.f64 x (*.f64 x 1/2) (cos.f64 eps)) (fma.f64 -1/24 (pow.f64 x 4) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x 1/2) (fma.f64 -1/24 (pow.f64 x 4) -1))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/24 (pow.f64 x 4)) (*.f64 1/720 (pow.f64 x 6))))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/2 (*.f64 x x) (fma.f64 -1/24 (pow.f64 x 4) (*.f64 1/720 (pow.f64 x 6)))) 1)) |
(+.f64 (cos.f64 eps) (+.f64 (fma.f64 1/2 (*.f64 x x) (fma.f64 -1/24 (pow.f64 x 4) (*.f64 1/720 (pow.f64 x 6)))) -1)) |
(+.f64 (fma.f64 x (*.f64 x 1/2) (fma.f64 -1/24 (pow.f64 x 4) (cos.f64 eps))) (fma.f64 1/720 (pow.f64 x 6) -1)) |
(-.f64 1 (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1) (cos.f64 x)) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x)) |
(fma.f64 eps (*.f64 -1/2 eps) (-.f64 1 (cos.f64 x))) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) 1)) (cos.f64 x)) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) 1)) (cos.f64 x)) |
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/720 (pow.f64 eps 6))))) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 -1/720 (pow.f64 eps 6)))) (cos.f64 x)) |
(-.f64 (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) 1))) (cos.f64 x)) |
(fma.f64 1/24 (pow.f64 eps 4) (-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) 1)) (cos.f64 x))) |
(-.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) 1))) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 1/2 (pow.f64 x 2))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (*.f64 1/2 (*.f64 x x)) 1)) |
(+.f64 (cos.f64 eps) (fma.f64 1/2 (*.f64 x x) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x 1/2) -1)) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (*.f64 -1/24 (pow.f64 x 4)))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/2 (*.f64 x x) (*.f64 -1/24 (pow.f64 x 4))) 1)) |
(+.f64 (fma.f64 1/2 (*.f64 x x) (cos.f64 eps)) (-.f64 (*.f64 -1/24 (pow.f64 x 4)) 1)) |
(+.f64 (fma.f64 x (*.f64 x 1/2) (cos.f64 eps)) (fma.f64 -1/24 (pow.f64 x 4) -1)) |
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x 1/2) (fma.f64 -1/24 (pow.f64 x 4) -1))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/24 (pow.f64 x 4)) (*.f64 1/720 (pow.f64 x 6))))) 1) |
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/2 (*.f64 x x) (fma.f64 -1/24 (pow.f64 x 4) (*.f64 1/720 (pow.f64 x 6)))) 1)) |
(+.f64 (cos.f64 eps) (+.f64 (fma.f64 1/2 (*.f64 x x) (fma.f64 -1/24 (pow.f64 x 4) (*.f64 1/720 (pow.f64 x 6)))) -1)) |
(+.f64 (fma.f64 x (*.f64 x 1/2) (fma.f64 -1/24 (pow.f64 x 4) (cos.f64 eps))) (fma.f64 1/720 (pow.f64 x 6) -1)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(-.f64 (exp.f64 (-.f64 1 (cos.f64 x))) 1) |
(expm1.f64 (-.f64 1 (cos.f64 x))) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x)))) 1) |
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 eps eps) (exp.f64 (-.f64 1 (cos.f64 x))))) (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (exp.f64 (-.f64 1 (cos.f64 x)))) -1) |
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (exp.f64 (-.f64 1 (cos.f64 x))) -1) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x))))) 1) |
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (exp.f64 (-.f64 1 (cos.f64 x)))) (fma.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x)))) (exp.f64 (-.f64 1 (cos.f64 x))))) -1) |
(+.f64 (*.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (pow.f64 eps 4) 1/6))) (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(+.f64 (*.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (fma.f64 (pow.f64 eps 4) 1/6 1))) -1) |
(fma.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 (pow.f64 eps 4) 1/6)) -1) |
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x))))) (+.f64 (*.f64 -31/720 (*.f64 (pow.f64 eps 6) (exp.f64 (-.f64 1 (cos.f64 x))))) (exp.f64 (-.f64 1 (cos.f64 x)))))) 1) |
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (exp.f64 (-.f64 1 (cos.f64 x)))) (fma.f64 1/6 (*.f64 (pow.f64 eps 4) (exp.f64 (-.f64 1 (cos.f64 x)))) (fma.f64 -31/720 (*.f64 (pow.f64 eps 6) (exp.f64 (-.f64 1 (cos.f64 x)))) (exp.f64 (-.f64 1 (cos.f64 x)))))) -1) |
(+.f64 (+.f64 (*.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 4) 1/6) (*.f64 (pow.f64 eps 6) -31/720))) (*.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (exp.f64 (-.f64 1 (cos.f64 x))))) -1) |
(+.f64 (*.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (fma.f64 (pow.f64 eps 4) 1/6 (*.f64 (pow.f64 eps 6) -31/720)))) (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(+.f64 (*.f64 (exp.f64 (-.f64 1 (cos.f64 x))) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (fma.f64 (pow.f64 eps 4) 1/6 (*.f64 (pow.f64 eps 6) -31/720)))) -1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1) |
(expm1.f64 (+.f64 (cos.f64 eps) -1)) |
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (exp.f64 (-.f64 (cos.f64 eps) 1))) 1) |
(+.f64 (*.f64 1/2 (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1)))) (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(fma.f64 1/2 (*.f64 x (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1)))) (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x 1/2)) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))) -1) |
(fma.f64 (+.f64 1 (*.f64 x (*.f64 x 1/2))) (exp.f64 (+.f64 (cos.f64 eps) -1)) -1) |
(-.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (+.f64 (*.f64 1/12 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 4))) (exp.f64 (-.f64 (cos.f64 eps) 1)))) 1) |
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))) (fma.f64 1/12 (*.f64 (pow.f64 x 4) (exp.f64 (+.f64 (cos.f64 eps) -1))) (exp.f64 (+.f64 (cos.f64 eps) -1)))) -1) |
(+.f64 (fma.f64 1/2 (*.f64 x (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1)))) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (pow.f64 x 4) 1/12))) (expm1.f64 (+.f64 (cos.f64 eps) -1))) |
(+.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 x (*.f64 x 1/2)) (*.f64 (pow.f64 x 4) 1/12)))) |
(+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 x (*.f64 x 1/2)) (+.f64 1 (*.f64 (pow.f64 x 4) 1/12)))) -1) |
(-.f64 (+.f64 (*.f64 1/720 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 2))) (+.f64 (*.f64 1/12 (*.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) (pow.f64 x 4))) (exp.f64 (-.f64 (cos.f64 eps) 1))))) 1) |
(+.f64 (fma.f64 1/720 (*.f64 (pow.f64 x 6) (exp.f64 (+.f64 (cos.f64 eps) -1))) (fma.f64 1/2 (*.f64 (*.f64 x x) (exp.f64 (+.f64 (cos.f64 eps) -1))) (fma.f64 1/12 (*.f64 (pow.f64 x 4) (exp.f64 (+.f64 (cos.f64 eps) -1))) (exp.f64 (+.f64 (cos.f64 eps) -1))))) -1) |
(fma.f64 1/720 (*.f64 (pow.f64 x 6) (exp.f64 (+.f64 (cos.f64 eps) -1))) (+.f64 (fma.f64 1/2 (*.f64 x (*.f64 x (exp.f64 (+.f64 (cos.f64 eps) -1)))) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (pow.f64 x 4) 1/12))) (expm1.f64 (+.f64 (cos.f64 eps) -1)))) |
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 x 4) 1/12) 1) (exp.f64 (+.f64 (cos.f64 eps) -1))) (-.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 x (*.f64 x 1/2) (*.f64 1/720 (pow.f64 x 6)))) 1)) |
(+.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (*.f64 (pow.f64 x 4) 1/12) (fma.f64 x (*.f64 x 1/2) (*.f64 1/720 (pow.f64 x 6)))))) |
(+.f64 (*.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (+.f64 (+.f64 1 (*.f64 (pow.f64 x 4) 1/12)) (fma.f64 x (*.f64 x 1/2) (*.f64 1/720 (pow.f64 x 6))))) -1) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
(-.f64 (exp.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (+.f64 x (+.f64 x eps)) | |
| 0.3b | (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) | |
| ✓ | 1.0b | (cbrt.f64 -2) |
| 3.0b | (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
Compiled 98 to 44 computations (55.1% saved)
| 1× | batch-egg-rewrite |
| 569× | fma-def_binary64 |
| 367× | expm1-udef_binary64 |
| 366× | log1p-udef_binary64 |
| 312× | fma-neg_binary64 |
| 228× | add-sqr-sqrt_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 3 | 3 |
| 1 | 59 | 3 |
| 2 | 597 | 3 |
| 3 | 5910 | 3 |
| 1× | node limit |
| Inputs |
|---|
(cbrt.f64 -2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cbrt.f64 -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 -2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 -2)))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cbrt.f64 -2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 -2)) (cbrt.f64 (cbrt.f64 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 4)) (cbrt.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/6) (pow.f64 -2 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 4))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 -2))) (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 16))) (*.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 4))) (cbrt.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 -2) 1/6) (*.f64 (pow.f64 (cbrt.f64 -2) 1/6) (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/12) (pow.f64 -2 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/12) (*.f64 (pow.f64 -2 1/12) (pow.f64 -2 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 -2 1/4) (pow.f64 -2 1/12))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 -2)) 5)) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 -2 1/6) (cbrt.f64 (cbrt.f64 -2))) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 -2)) (cbrt.f64 (cbrt.f64 (cbrt.f64 16)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 4)) (cbrt.f64 (cbrt.f64 (cbrt.f64 4)))) (cbrt.f64 (cbrt.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 (cbrt.f64 4)) (pow.f64 (cbrt.f64 -2) 1/6)) (pow.f64 (cbrt.f64 -2) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (cbrt.f64 -2) 1) 3) 1) (fma.f64 (+.f64 (cbrt.f64 -2) 1) (+.f64 (cbrt.f64 -2) 1) (+.f64 1 (+.f64 (cbrt.f64 -2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (cbrt.f64 -2) 1) (+.f64 (cbrt.f64 -2) 1) -1) (+.f64 (+.f64 (cbrt.f64 -2) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 -2 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 4 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 -2 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/3) (log.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cbrt.f64 -2)))) (sqrt.f64 (log.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cbrt.f64 -2))) 2)) (cbrt.f64 (log.f64 (cbrt.f64 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (cbrt.f64 4))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 -2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/6 (log.f64 -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cbrt.f64 -2) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cbrt.f64 -2) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (+.f64 (cbrt.f64 -2) 1)) (cbrt.f64 (+.f64 (cbrt.f64 -2) 1))) (cbrt.f64 (+.f64 (cbrt.f64 -2) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (pow.f64 -2 1/6)) (hypot.f64 1 (pow.f64 -2 1/6)) -1))))) |
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 0 | 0 |
| 1× | saturated |
| Inputs |
|---|
| Outputs |
|---|
Compiled 12556 to 8281 computations (34% saved)
82 alts after pruning (74 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 567 | 30 | 597 |
| Fresh | 19 | 44 | 63 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 8 | 8 |
| Total | 587 | 82 | 669 |
| Status | Error | Program |
|---|---|---|
| 39.1b | (cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) | |
| 53.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) | |
| 38.8b | (*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 2) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 29.8b | (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) | |
| 30.0b | (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) | |
| ✓ | 49.3b | (*.f64 eps (*.f64 eps -1/2)) |
| 39.0b | (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) | |
| ✓ | 38.8b | (-.f64 (cos.f64 eps) 1) |
| 13.6b | (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 3) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 39.4b | (-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) | |
| 39.0b | (*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) | |
| 38.8b | (-.f64 (cos.f64 eps) (cos.f64 x)) | |
| 43.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) | |
| 29.9b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 36.0b | (*.f64 (sin.f64 x) (neg.f64 eps)) | |
| 46.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) | |
| 46.9b | (-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) | |
| 32.5b | (*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2) | |
| 26.6b | (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 50.0b | (/.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) | |
| ✓ | 39.3b | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 38.9b | (log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) | |
| 26.4b | (-.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)) | |
| 35.9b | (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) | |
| 13.6b | (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3) | |
| 29.8b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) | |
| 44.9b | (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))))) | |
| 39.0b | (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) | |
| 54.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) | |
| 39.2b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))) | |
| 26.0b | (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) | |
| 38.8b | (-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) | |
| 40.1b | (fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))) | |
| 26.1b | (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) | |
| 37.4b | (*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) | |
| 39.0b | (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) | |
| 43.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2) | |
| 44.2b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2)))) | |
| 34.9b | (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 39.2b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)) | |
| 49.7b | (*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) | |
| 36.0b | (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) | |
| 38.8b | (*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) | |
| ✓ | 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
| 39.9b | (+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) | |
| ✓ | 38.8b | (cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
| 32.3b | (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) | |
| ✓ | 38.8b | (log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
| 33.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) | |
| 26.0b | (-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) | |
| 55.5b | (*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) | |
| 55.0b | (log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))) | |
| 26.2b | (-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x)) | |
| 54.9b | (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) | |
| 53.5b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) | |
| 26.1b | (log1p.f64 (expm1.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) | |
| 12.9b | (*.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 39.5b | (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) | |
| 39.0b | (log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3))) | |
| 47.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) | |
| 23.6b | (*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 1) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 26.1b | (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) | |
| 12.9b | (*.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 49.0b | (expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) | |
| 40.4b | (-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) | |
| 39.2b | (log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)) | |
| 55.0b | (log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 x)))) | |
| 13.2b | (*.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) | |
| 55.5b | (*.f64 (log.f64 1) -2) | |
| 35.6b | (*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x))) | |
| 54.9b | (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) | |
| ✓ | 12.9b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
| 48.5b | (*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) | |
| 34.9b | (log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) | |
| 45.8b | (*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) | |
| 39.0b | (*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 0.3b | (*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2) | |
| 45.3b | (*.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) | |
| ✓ | 51.6b | (*.f64 eps (neg.f64 x)) |
| 40.2b | (-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) | |
| 23.6b | (*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
Compiled 1409 to 1061 computations (24.7% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) |
(*.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) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.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 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) |
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) |
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) |
(*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x))) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(*.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)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/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 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))) |
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3))) |
(log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)) |
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x))))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) |
(*.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 2) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 3) (sin.f64 (*.f64 1/2 eps))) -2) |
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3) |
(*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 1) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) |
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x)) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(-.f64 (*.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))) -2) |
(/.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))) |
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3)) |
(*.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 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))) |
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) |
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3)))) |
(/.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) |
(-.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))))) |
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(/.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))) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))) |
(-.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (cos.f64 x)) |
| Outputs |
|---|
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2) |
4 calls:
| 122.0ms | x |
| 79.0ms | eps |
| 71.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 58.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 0.3b | 1 | x |
| 0.3b | 1 | eps |
| 0.3b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 0.3b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 2056 to 1156 computations (43.8% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) |
(*.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) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.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 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) |
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) |
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) |
(*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x))) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(*.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)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/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 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))) |
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3))) |
(log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)) |
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x))))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) |
(*.f64 (*.f64 (log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 2) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) 3) (sin.f64 (*.f64 1/2 eps))) -2) |
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (*.f64 -2 (sin.f64 (*.f64 1/2 eps))))) 3) |
(*.f64 (*.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 (fma.f64 x 2 eps))))) 1) (sin.f64 (*.f64 1/2 eps))) -2) |
| Outputs |
|---|
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
4 calls:
| 334.0ms | x |
| 273.0ms | eps |
| 187.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 177.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.4b | 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 1485 to 947 computations (36.2% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 89.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 75.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) |
(*.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) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.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 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) |
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) |
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) |
(*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x))) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(*.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)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/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 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))) |
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3))) |
(log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)) |
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x))))) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.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 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) |
4 calls:
| 272.0ms | x |
| 269.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 269.0ms | eps |
| 132.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 10.6b | 3 | x |
| 0.4b | 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 1353 to 848 computations (37.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 53.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 58.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/2))) -2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) |
(log1p.f64 (expm1.f64 (-.f64 1 (cos.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) 1))) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3) |
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) |
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(log1p.f64 (-.f64 (exp.f64 (-.f64 (cos.f64 eps) 1)) 1)) |
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 4)) -2) |
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(-.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (cos.f64 x)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)) |
(/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1)) |
(*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3))) 1/2))) -2) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (*.f64 x -2) (cos.f64 (*.f64 eps -1/2))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (cos.f64 eps))) (*.f64 (*.f64 x x) 1/2)))) 1) |
(*.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) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))) |
(-.f64 (log.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) |
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x)) |
(*.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 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) |
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x)) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) 2))) |
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1)) |
(sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))) |
(pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3) |
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))) |
(*.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) -2) |
(*.f64 (-.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1) -2) |
(*.f64 (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2))) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x))) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (fma.f64 x 2 eps))))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2) |
(-.f64 (-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(*.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)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2) |
(log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1) |
(*.f64 (pow.f64 (pow.f64 4 1/6) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2) |
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 1 (/.f64 eps (*.f64 eps eps))) 1/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 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 eps -1/2)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 eps -1/2)) (+.f64 -2 (*.f64 x x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2)))) |
(log1p.f64 (sqrt.f64 (pow.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)) 2))) |
(log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3))) |
(log1p.f64 (pow.f64 (cbrt.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3)) |
(log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x))))) |
| Outputs |
|---|
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
4 calls:
| 49.0ms | eps |
| 48.0ms | x |
| 32.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 29.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 12.8b | 1 | x |
| 12.8b | 1 | eps |
| 12.8b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 12.8b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 1339 to 844 computations (37% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (-.f64 (+.f64 x eps) x) 1/2))) -2) |
| Outputs |
|---|
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
4 calls:
| 22.0ms | eps |
| 14.0ms | x |
| 8.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 8.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 12.9b | 1 | x |
| 12.9b | 1 | eps |
| 12.9b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 12.9b | 1 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 259 to 160 computations (38.2% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1) |
(*.f64 (-.f64 (+.f64 1 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) 1) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
4 calls:
| 41.0ms | x |
| 35.0ms | eps |
| 15.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 15.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 16.1b | 3 | x |
| 12.6b | 3 | eps |
| 13.7b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 13.7b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 225 to 138 computations (38.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 78.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 86.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(+.f64 (cos.f64 eps) (-.f64 -1 (*.f64 x (sin.f64 eps)))) |
| Outputs |
|---|
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) |
(*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) |
4 calls:
| 47.0ms | eps |
| 47.0ms | x |
| 21.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 20.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 16.1b | 3 | x |
| 18.7b | 3 | eps |
| 19.2b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 19.2b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 167 to 104 computations (37.7% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 139.0ms | 1.3414793418423655e-66 | 6.018662880455897e-65 |
| 150.0ms | -2.1785999829974862e-89 | -6.308333738079953e-90 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.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) |
(-.f64 (+.f64 1 (-.f64 (cos.f64 eps) (cos.f64 x))) 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:
| 59.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 57.0ms | x |
| 45.0ms | eps |
| 19.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 17.2b | 3 | x |
| 18.7b | 3 | eps |
| 20.1b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 20.1b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 149 to 93 computations (37.6% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 172.0ms | 1.3414793418423655e-66 | 6.018662880455897e-65 |
| 203.0ms | -2.1785999829974862e-89 | -6.308333738079953e-90 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.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 (+.f64 x eps)) (cos.f64 x)) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) (cos.f64 x)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(-.f64 (cos.f64 eps) (cos.f64 x)) |
4 calls:
| 54.0ms | eps |
| 39.0ms | x |
| 19.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 18.0ms | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 23.5b | 3 | x |
| 19.0b | 3 | eps |
| 20.1b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
| 20.1b | 2 | (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) |
Compiled 124 to 75 computations (39.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 88.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 86.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2))) |
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 1/4 (*.f64 x x) -1/2)) x)) |
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) |
(-.f64 (cos.f64 eps) 1) |
2 calls:
| 100.0ms | x |
| 32.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 23.5b | 3 | x |
| 19.3b | 3 | eps |
Compiled 89 to 57 computations (36% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 52.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 152.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(*.f64 (sin.f64 x) (neg.f64 eps)) |
(-.f64 (cos.f64 eps) 1) |
2 calls:
| 16.0ms | x |
| 14.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 23.5b | 3 | x |
| 19.3b | 3 | eps |
Compiled 35 to 21 computations (40% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 58.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 53.0ms | -0.06558902832275153 | -1.3142923159780232e-5 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
(-.f64 (cos.f64 eps) 1) |
| Outputs |
|---|
(-.f64 (cos.f64 eps) 1) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(-.f64 (cos.f64 eps) 1) |
2 calls:
| 39.0ms | x |
| 18.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 37.6b | 3 | x |
| 30.2b | 5 | eps |
Compiled 25 to 18 computations (28% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 55.0ms | 7.0733017174529855e-15 | 1.9313168011378832 |
| 133.0ms | 1.820551508707074e-123 | 1.2772007751762257e-120 |
| 180.0ms | -1.511609088854967e-150 | -5.197066995262055e-162 |
| 60.0ms | -1.7565918431791834e-25 | -2.7981743792207993e-27 |
Compiled 14 to 10 computations (28.6% saved)
Total -11.1b remaining (-24.4%)
Threshold costs -11.1b (-24.4%)
| Inputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 (log.f64 1) -2) |
| Outputs |
|---|
(*.f64 eps (neg.f64 x)) |
(*.f64 eps (*.f64 eps -1/2)) |
(*.f64 eps (neg.f64 x)) |
2 calls:
| 19.0ms | eps |
| 10.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 45.5b | 3 | x |
| 47.2b | 3 | eps |
Compiled 21 to 15 computations (28.6% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 101.0ms | 4.786131795453176e-126 | 4.4341402645622766e-116 |
| 111.0ms | -9.164731730283988e-98 | -1.3762128694841321e-101 |
Compiled 14 to 10 computations (28.6% saved)
| 1× | egg-herbie |
| 259× | distribute-rgt-neg-in_binary64 |
| 196× | cancel-sign-sub-inv_binary64 |
| 181× | distribute-lft-neg-out_binary64 |
| 160× | distribute-lft-neg-in_binary64 |
| 157× | neg-sub0_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 118 | 619 |
| 1 | 192 | 617 |
| 2 | 240 | 617 |
| 3 | 288 | 617 |
| 4 | 374 | 617 |
| 5 | 462 | 617 |
| 6 | 539 | 617 |
| 7 | 606 | 617 |
| 8 | 678 | 617 |
| 9 | 785 | 617 |
| 10 | 903 | 617 |
| 11 | 1032 | 617 |
| 12 | 1190 | 617 |
| 13 | 1356 | 617 |
| 14 | 1496 | 617 |
| 15 | 1593 | 617 |
| 16 | 1667 | 617 |
| 17 | 1734 | 617 |
| 18 | 1808 | 617 |
| 19 | 1885 | 617 |
| 20 | 1926 | 617 |
| 21 | 1949 | 617 |
| 22 | 1957 | 617 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -7651036545421139/43556142965880123323311949751266331066368) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps -5571050685895871/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 eps (*.f64 eps -1/2)) (if (<=.f64 eps 5420021088678265/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976) (*.f64 eps (neg.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (*.f64 eps -1/2)) (-.f64 (cos.f64 eps) 1))))) |
(if (<=.f64 x -440806660674979/4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848) (*.f64 eps (neg.f64 x)) (if (<=.f64 x 3647729490741511/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 eps (*.f64 eps -1/2)) (*.f64 eps (neg.f64 x)))) |
(*.f64 eps (neg.f64 x)) |
| Outputs |
|---|
(*.f64 (*.f64 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 (*.f64 x 2) 1/2))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 (*.f64 x 2) 1/2)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (*.f64 x 2)))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (*.f64 x 2)))))) -2) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 -2 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 -2 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 eps (-.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/4)) (*.f64 (sin.f64 x) (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/12)))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 -2 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 eps (-.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) -1/4)) (*.f64 (sin.f64 x) (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/12)))))) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (-.f64 x x)))) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 eps x)))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) -2) |
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))) -2))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x))) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x))))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) -2) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 (sin.f64 x) (neg.f64 eps)) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 x) (neg.f64 eps)))) |
(if (<=.f64 x -3122885028625455/143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664) (*.f64 eps (neg.f64 (sin.f64 x))) (if (<=.f64 x 2544970885703719/1897137590064188545819787018382342682267975428761855001222473056385648716020711424) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 eps (neg.f64 (sin.f64 x))))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 -2 (*.f64 1/2 (*.f64 eps (sin.f64 x)))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (-.f64 (cos.f64 eps) (cos.f64 x)))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (*.f64 1/2 (*.f64 eps (sin.f64 x))) -2) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 -2 (*.f64 1/2 (*.f64 eps (sin.f64 x)))) (+.f64 (cos.f64 eps) -1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 2 (*.f64 -1/2 (*.f64 eps (sin.f64 x)))) (+.f64 (cos.f64 eps) -1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 (sin.f64 x) (neg.f64 eps)) (+.f64 (cos.f64 eps) -1))) |
(if (<=.f64 eps -4726187576222987/72057594037927936) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (neg.f64 (sin.f64 x))) (+.f64 (cos.f64 eps) -1))) |
(if (<=.f64 eps -7651036545421139/43556142965880123323311949751266331066368) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps -5571050685895871/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 eps (*.f64 eps -1/2)) (if (<=.f64 eps 5420021088678265/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976) (*.f64 eps (neg.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (*.f64 eps -1/2)) (-.f64 (cos.f64 eps) 1))))) |
(if (<=.f64 eps -7651036545421139/43556142965880123323311949751266331066368) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps -5571050685895871/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 eps (*.f64 eps -1/2)) (if (<=.f64 eps 5420021088678265/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976) (*.f64 eps (neg.f64 x)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (*.f64 eps -1/2)) (+.f64 (cos.f64 eps) -1))))) |
(if (<=.f64 eps -7651036545421139/43556142965880123323311949751266331066368) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps -5571050685895871/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 eps (*.f64 eps -1/2)) (if (<=.f64 eps 5420021088678265/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976) (*.f64 (neg.f64 eps) x) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (*.f64 eps -1/2)) (+.f64 (cos.f64 eps) -1))))) |
(if (<=.f64 eps -7651036545421139/43556142965880123323311949751266331066368) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps -5571050685895871/3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624) (*.f64 eps (*.f64 eps -1/2)) (if (<=.f64 eps 5420021088678265/2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976) (*.f64 x (neg.f64 eps)) (if (<=.f64 eps 8966475167724643/1267650600228229401496703205376) (*.f64 eps (*.f64 eps -1/2)) (+.f64 (cos.f64 eps) -1))))) |
(if (<=.f64 x -440806660674979/4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848) (*.f64 eps (neg.f64 x)) (if (<=.f64 x 3647729490741511/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 eps (*.f64 eps -1/2)) (*.f64 eps (neg.f64 x)))) |
(if (<=.f64 x -440806660674979/4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848) (*.f64 (neg.f64 eps) x) (if (<=.f64 x 3647729490741511/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (neg.f64 eps) x))) |
(if (<=.f64 x -440806660674979/4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848) (*.f64 x (neg.f64 eps)) (if (<=.f64 x 3647729490741511/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (*.f64 eps (*.f64 eps -1/2)) (*.f64 x (neg.f64 eps)))) |
(*.f64 eps (neg.f64 x)) |
(*.f64 (neg.f64 eps) x) |
(*.f64 x (neg.f64 eps)) |
Compiled 429 to 275 computations (35.9% saved)
Compiled 403 to 219 computations (45.7% saved)
Loading profile data...