Time bar (total: 16.2s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 10 to 7 computations (30% saved)
| 3.2s | 3606× | body | 1024 | valid |
| 1.3s | 1244× | body | 2048 | valid |
| 772.0ms | 1444× | body | 512 | valid |
| 413.0ms | 1961× | body | 256 | valid |
| 1.0ms | 1× | body | 4096 | valid |
| 2× | egg-herbie |
| 76× | fma-def_binary64 |
| 57× | fma-neg_binary64 |
| 27× | cancel-sign-sub-inv_binary64 |
| 24× | sub-neg_binary64 |
| 18× | distribute-rgt-in_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 22 |
| 1 | 17 | 22 |
| 2 | 25 | 22 |
| 3 | 38 | 22 |
| 4 | 53 | 22 |
| 5 | 81 | 22 |
| 6 | 141 | 22 |
| 7 | 199 | 22 |
| 8 | 284 | 22 |
| 9 | 355 | 22 |
| 10 | 407 | 22 |
| 11 | 411 | 22 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 eps)) |
| Outputs |
|---|
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 eps)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 eps)) |
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 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Outputs |
|---|
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 9 to 6 computations (33.3% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
|---|---|---|
| ▶ | 40.1b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 9 to 6 computations (33.3% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 1.6b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| ✓ | 3.1b | (sin.f64 (+.f64 x eps)) |
Compiled 20 to 6 computations (70% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | eps | @ | inf | (sin.f64 (+.f64 x eps)) |
| 1.0ms | x | @ | 0 | (sin.f64 (+.f64 x eps)) |
| 1.0ms | eps | @ | inf | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 1.0ms | eps | @ | 0 | (sin.f64 (+.f64 x eps)) |
| 1.0ms | eps | @ | 0 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 1× | batch-egg-rewrite |
| 587× | unpow-prod-down_binary64 |
| 464× | fma-def_binary64 |
| 445× | log-prod_binary64 |
| 279× | pow-prod-down_binary64 |
| 265× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 17 |
| 1 | 173 | 17 |
| 2 | 2745 | 17 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 (+.f64 x eps)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1) (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))) (*.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 (+.f64 x eps)))) 2) 3) (cbrt.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (sin.f64 (+.f64 x eps)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (sin.f64 (+.f64 x eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 x eps)) (cbrt.f64 (sin.f64 (+.f64 x eps)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (sqrt.f64 (sin.f64 (+.f64 x eps)))) 1/3) (cbrt.f64 (sqrt.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (sin.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (+.f64 x eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (pow.f64 (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (pow.f64 (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) 1) (pow.f64 (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) 1) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1/3) (cbrt.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2) 2) 1/3) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2) 3) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 2) 2) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (sin.f64 x)) 2) (*.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (sin.f64 x)) 2)) (-.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (neg.f64 (cbrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (neg.f64 (sqrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (sin.f64 x))) 2) (cbrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (sin.f64 x))) (sqrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sin.f64 x) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x))))))) |
| 1× | egg-herbie |
| 889× | fma-neg_binary64 |
| 469× | neg-sub0_binary64 |
| 426× | neg-mul-1_binary64 |
| 346× | distribute-rgt-neg-in_binary64 |
| 302× | distribute-rgt-neg-out_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 68 | 580 |
| 1 | 191 | 575 |
| 2 | 466 | 561 |
| 3 | 1747 | 560 |
| 4 | 5053 | 547 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps)))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 x) |
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(fma.f64 (cos.f64 eps) x (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 (cos.f64 eps) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) |
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (sin.f64 eps)))) |
(+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (cos.f64 eps) (fma.f64 -1/6 (pow.f64 x 3) x) (sin.f64 eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 eps (*.f64 -1 x))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 x) |
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x)) |
(fma.f64 (cos.f64 x) eps (sin.f64 x)) |
(fma.f64 eps (cos.f64 x) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))) |
(+.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 (-.f64 x (*.f64 -1 eps))) |
(sin.f64 (+.f64 eps x)) |
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps)) |
(fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps))) |
(-.f64 (fma.f64 (cos.f64 eps) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) x) |
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps)))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps)))) |
(fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (*.f64 x x) (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 x (fma.f64 (cos.f64 eps) -1/6 1/6))) (sin.f64 eps))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))) |
(fma.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)) (*.f64 eps (cos.f64 x))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))) |
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
Compiled 3642 to 1131 computations (68.9% saved)
40 alts after pruning (39 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 166 | 39 | 205 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 166 | 40 | 206 |
| Status | Error | Program |
|---|---|---|
| 46.4b | (log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x)))) | |
| 61.2b | (-.f64 (sin.f64 x) (sin.f64 x)) | |
| ▶ | 30.2b | (*.f64 (cos.f64 x) eps) |
| 32.7b | (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) | |
| 40.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 40.3b | (-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) | |
| 40.8b | (-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) | |
| 25.0b | (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 40.1b | (-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 46.3b | (-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) | |
| 30.6b | (fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) | |
| 24.3b | (fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 40.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) | |
| 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 44.8b | (fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 30.8b | (-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) | |
| 30.5b | (fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) | |
| ▶ | 30.5b | (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
| ✓ | 40.1b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 24.9b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| ▶ | 41.2b | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
| 24.2b | (-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| ▶ | 24.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 46.4b | (-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 30.4b | (*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) | |
| ▶ | 52.1b | (exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
| 52.4b | (-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) | |
| 30.5b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) | |
| 34.4b | (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) | |
| 51.8b | (pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) | |
| 25.0b | (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 41.0b | (*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) | |
| 40.7b | (-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) | |
| 46.4b | (log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x))))) | |
| 40.5b | (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) | |
| 24.3b | (-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) | |
| 44.3b | (fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 46.4b | (log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) | |
| 24.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
Compiled 1235 to 814 computations (34.1% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) |
| ✓ | 0.1b | (*.f64 (cos.f64 x) (sin.f64 eps)) |
| ✓ | 3.5b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
Compiled 40 to 9 computations (77.5% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | x | @ | -inf | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 2.0ms | x | @ | inf | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 2.0ms | eps | @ | inf | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 2.0ms | eps | @ | -inf | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 1.0ms | x | @ | 0 | (*.f64 (cos.f64 x) (sin.f64 eps)) |
| 1× | batch-egg-rewrite |
| 710× | prod-diff_binary64 |
| 515× | log-prod_binary64 |
| 333× | pow-prod-down_binary64 |
| 289× | pow2_binary64 |
| 281× | fma-def_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 45 |
| 1 | 207 | 45 |
| 2 | 2733 | 25 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
(*.f64 (cos.f64 x) (sin.f64 eps)) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 -1 (sin.f64 x) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (sin.f64 x)) 2) (*.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (sin.f64 x)) 2)) (-.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (neg.f64 (cbrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (neg.f64 (sqrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps))) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps)))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps)))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 x) (sin.f64 (+.f64 x eps)))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (sin.f64 x))) 2) (cbrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (sin.f64 x))) (sqrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sin.f64 x) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (cbrt.f64 (pow.f64 (cos.f64 eps) 2))) (cbrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 eps x)) (sin.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (sin.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (+.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (+.f64 x eps))) 1)))))) |
| 1× | egg-herbie |
| 589× | sub-neg_binary64 |
| 538× | fma-def_binary64 |
| 441× | *-commutative_binary64 |
| 384× | +-commutative_binary64 |
| 346× | unswap-sqr_binary64 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 89 | 1080 |
| 1 | 261 | 1063 |
| 2 | 710 | 977 |
| 3 | 2290 | 973 |
| 4 | 3991 | 973 |
| 5 | 5252 | 972 |
| 6 | 7312 | 972 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps)))) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps)))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(sin.f64 x) |
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(fma.f64 (cos.f64 eps) x (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(fma.f64 (fma.f64 -1/2 (*.f64 x x) 1) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) x)) |
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (*.f64 (+.f64 (cos.f64 eps) -1) x))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) (*.f64 x -1/2))) (-.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)) x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(fma.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/24))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps)) |
(*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (sin.f64 eps))) |
(+.f64 (sin.f64 eps) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4))))) |
(*.f64 (sin.f64 eps) (+.f64 (*.f64 x (*.f64 x -1/2)) (fma.f64 1/24 (pow.f64 x 4) 1))) |
(*.f64 (sin.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (fma.f64 -1/2 (*.f64 x x) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (fma.f64 -1/720 (*.f64 (sin.f64 eps) (pow.f64 x 6)) (sin.f64 eps)))) |
(+.f64 (fma.f64 -1/720 (*.f64 (sin.f64 eps) (pow.f64 x 6)) (sin.f64 eps)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4))))) |
(fma.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (*.f64 (sin.f64 eps) (fma.f64 -1/720 (pow.f64 x 6) 1))) |
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/720 (pow.f64 x 6) 1) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))))) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))) |
(*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) |
(*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))) |
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 1/120 (pow.f64 eps 5)))) |
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/5040 (*.f64 (cos.f64 x) (pow.f64 eps 7)) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))))) |
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/5040 (pow.f64 eps 7)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) eps))) |
(*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/5040 (pow.f64 eps 7))) (fma.f64 1/120 (pow.f64 eps 5) eps))) |
(*.f64 (cos.f64 x) (+.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/5040 (pow.f64 eps 7))))) |
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(fma.f64 (cos.f64 eps) x (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (sin.f64 eps)))) |
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(sin.f64 x) |
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x)) |
(fma.f64 (cos.f64 x) eps (sin.f64 x)) |
(fma.f64 eps (cos.f64 x) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(+.f64 (sin.f64 x) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(+.f64 (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 (cos.f64 x) eps) |
Compiled 10 to 4 computations (60% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | eps | @ | -inf | (*.f64 (cos.f64 x) eps) |
| 3.0ms | eps | @ | inf | (*.f64 (cos.f64 x) eps) |
| 1.0ms | x | @ | 0 | (*.f64 (cos.f64 x) eps) |
| 1.0ms | eps | @ | 0 | (*.f64 (cos.f64 x) eps) |
| 1.0ms | x | @ | -inf | (*.f64 (cos.f64 x) eps) |
| 1× | batch-egg-rewrite |
| 462× | pow1_binary64 |
| 440× | add-sqr-sqrt_binary64 |
| 435× | *-un-lft-identity_binary64 |
| 422× | add-log-exp_binary64 |
| 422× | log1p-expm1-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 6 |
| 1 | 97 | 6 |
| 2 | 1146 | 6 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (cos.f64 x) eps) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 x)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 x) eps))))))) |
| 1× | egg-herbie |
| 515× | distribute-lft-out_binary64 |
| 503× | sqr-pow_binary64 |
| 492× | distribute-rgt-out_binary64 |
| 432× | *-commutative_binary64 |
| 398× | associate-+l+_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 24 | 94 |
| 1 | 58 | 92 |
| 2 | 145 | 88 |
| 3 | 447 | 82 |
| 4 | 1978 | 81 |
| 5 | 3993 | 81 |
| 6 | 4249 | 81 |
| 7 | 4563 | 81 |
| 8 | 5086 | 81 |
| 9 | 5841 | 81 |
| 10 | 6581 | 81 |
| 11 | 7536 | 81 |
| 12 | 7985 | 81 |
| 1× | node limit |
| Inputs |
|---|
eps |
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
| Outputs |
|---|
eps |
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 eps (*.f64 -1/2 (*.f64 eps (*.f64 x x)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps) |
(*.f64 eps (fma.f64 -1/2 (*.f64 x x) 1)) |
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x))))) |
(+.f64 eps (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4))))) |
(fma.f64 (pow.f64 x 4) (*.f64 eps 1/24) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps)) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) eps) |
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))) |
(fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) (+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x)))))) |
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4)))) (fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) eps)) |
(fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) (fma.f64 (pow.f64 x 4) (*.f64 eps 1/24) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (fma.f64 eps (*.f64 -1/720 (pow.f64 x 6)) eps)) |
(*.f64 eps (+.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (fma.f64 -1/720 (pow.f64 x 6) 1))) |
(*.f64 eps (+.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (fma.f64 -1/2 (*.f64 x x) (*.f64 -1/720 (pow.f64 x 6))))) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
(*.f64 eps (cos.f64 x)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.3b | (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| ✓ | 0.5b | (exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
| 1.6b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) | |
| 3.1b | (sin.f64 (+.f64 x eps)) |
Compiled 37 to 8 computations (78.4% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 51.0ms | eps | @ | -inf | (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| 49.0ms | x | @ | inf | (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| 31.0ms | x | @ | -inf | (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| 19.0ms | eps | @ | inf | (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| 2.0ms | x | @ | 0 | (exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
| 1× | batch-egg-rewrite |
| 483× | log-prod_binary64 |
| 469× | fma-def_binary64 |
| 306× | pow-prod-down_binary64 |
| 285× | pow2_binary64 |
| 225× | fma-neg_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 24 |
| 1 | 197 | 24 |
| 2 | 2931 | 24 |
| 1× | node limit |
| Inputs |
|---|
(exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
(log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (/.f64 (pow.f64 (sin.f64 x) 3) (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (pow.f64 (exp.f64 1) (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (exp.f64 1) (log.f64 2)) (pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (sin.f64 x)) 2) (*.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (sin.f64 x)) 2)) (-.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (exp.f64 (log1p.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (pow.f64 (exp.f64 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)))) (pow.f64 (exp.f64 1) (log.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)))) (pow.f64 (exp.f64 1) (log.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (*.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (*.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) 1) (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 1) (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 1) (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (cbrt.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (sqrt.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (sqrt.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (sqrt.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2))) (sqrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) 1) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 2)) (cbrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (cbrt.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (cbrt.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (cbrt.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2))) (cbrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)) (sqrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (sqrt.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (neg.f64 (cbrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (neg.f64 (sqrt.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (sin.f64 x))) 2) (cbrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (sin.f64 x))) (sqrt.f64 (neg.f64 (sin.f64 x))) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sin.f64 x) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (sin.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) (log.f64 (/.f64 1 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) (log.f64 (/.f64 1 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) (log.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 2) (log.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) (*.f64 2 (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) (log.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (+.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x)))) (log.f64 (-.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))) (log.f64 (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3))) (log.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2))) (log.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (log.f64 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)))) (log.f64 (neg.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)))) (log.f64 (neg.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3))) (log.f64 (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (sin.f64 x)) 2) (*.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (sin.f64 x)) 2))) (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2) (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (log.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (log.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (fma.f64 (sin.f64 x) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (log.f64 (/.f64 (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1) 1)))))) |
| 1× | egg-herbie |
| 613× | associate-*r*_binary64 |
| 564× | associate-*l*_binary64 |
| 474× | fma-def_binary64 |
| 372× | unswap-sqr_binary64 |
| 235× | associate-+l+_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 124 | 915 |
| 1 | 362 | 906 |
| 2 | 1123 | 886 |
| 3 | 6455 | 886 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(log.f64 (sin.f64 eps)) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (log.f64 (sin.f64 eps))) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (pow.f64 (sin.f64 eps) 2))) 1) (pow.f64 x 2))) (log.f64 (sin.f64 eps)))) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (pow.f64 (sin.f64 eps) 2))) 1) (pow.f64 x 2))) (+.f64 (log.f64 (sin.f64 eps)) (*.f64 1/6 (*.f64 (+.f64 (*.f64 3 (/.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (sin.f64 eps))) (*.f64 2 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 3) (pow.f64 (sin.f64 eps) 3))))) (pow.f64 x 3)))))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(+.f64 (log.f64 eps) (log.f64 (cos.f64 x))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (log.f64 (cos.f64 x)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (+.f64 (log.f64 (cos.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2))) 1/3)))))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (cos.f64 x) 3))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 x) (cos.f64 x))) (*.f64 1/4 (/.f64 (sin.f64 x) (cos.f64 x))))))) (+.f64 (log.f64 (cos.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2))) 1/3))))))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (*.f64 eps (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))) |
(+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 eps (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 1/24 (pow.f64 eps 4))))) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) |
(log.f64 (sin.f64 eps)) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (log.f64 (sin.f64 eps))) |
(fma.f64 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) x (log.f64 (sin.f64 eps))) |
(fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (log.f64 (sin.f64 eps))) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (pow.f64 (sin.f64 eps) 2))) 1) (pow.f64 x 2))) (log.f64 (sin.f64 eps)))) |
(fma.f64 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) x (fma.f64 1/2 (*.f64 (*.f64 x x) (fma.f64 -1 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)) -1)) (log.f64 (sin.f64 eps)))) |
(fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 1/2 (*.f64 x (*.f64 x (fma.f64 -1 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)) -1))) (log.f64 (sin.f64 eps)))) |
(fma.f64 (*.f64 x x) (+.f64 -1/2 (*.f64 -1/2 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)))) (fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (log.f64 (sin.f64 eps)))) |
(+.f64 (*.f64 (-.f64 (/.f64 (cos.f64 eps) (sin.f64 eps)) (/.f64 1 (sin.f64 eps))) x) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 2) (pow.f64 (sin.f64 eps) 2))) 1) (pow.f64 x 2))) (+.f64 (log.f64 (sin.f64 eps)) (*.f64 1/6 (*.f64 (+.f64 (*.f64 3 (/.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (sin.f64 eps))) (*.f64 2 (/.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 3) (pow.f64 (sin.f64 eps) 3))))) (pow.f64 x 3)))))) |
(fma.f64 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) x (+.f64 (fma.f64 1/2 (*.f64 (*.f64 x x) (fma.f64 -1 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)) -1)) (log.f64 (sin.f64 eps))) (*.f64 (*.f64 1/6 (fma.f64 3 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 6 (/.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (sin.f64 eps)) (/.f64 (*.f64 2 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) (pow.f64 (sin.f64 eps) 3))))) (pow.f64 x 3)))) |
(fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 1/2 (*.f64 x (*.f64 x (fma.f64 -1 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)) -1))) (fma.f64 1/6 (*.f64 (pow.f64 x 3) (fma.f64 3 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 2 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) (pow.f64 (sin.f64 eps) 3)) (*.f64 6 (/.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps)))))) (log.f64 (sin.f64 eps))))) |
(fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 (*.f64 x x) (+.f64 -1/2 (*.f64 -1/2 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)))) (fma.f64 1/6 (*.f64 (pow.f64 x 3) (+.f64 (/.f64 (fma.f64 (cos.f64 eps) 3 -3) (sin.f64 eps)) (fma.f64 2 (pow.f64 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) 3) (/.f64 (neg.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 eps))))) (log.f64 (sin.f64 eps))))) |
(fma.f64 x (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) (fma.f64 (*.f64 x x) (+.f64 -1/2 (*.f64 -1/2 (/.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (sin.f64 eps) 2)))) (fma.f64 1/6 (*.f64 (pow.f64 x 3) (+.f64 (/.f64 (fma.f64 (cos.f64 eps) 3 -3) (sin.f64 eps)) (fma.f64 2 (pow.f64 (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps)) 3) (/.f64 (+.f64 1 (neg.f64 (cos.f64 eps))) (sin.f64 eps))))) (log.f64 (sin.f64 eps))))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(+.f64 (log.f64 eps) (log.f64 (cos.f64 x))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (log.f64 (cos.f64 x)))) |
(fma.f64 -1/2 (/.f64 eps (/.f64 (cos.f64 x) (sin.f64 x))) (+.f64 (log.f64 eps) (log.f64 (cos.f64 x)))) |
(fma.f64 -1/2 (*.f64 (/.f64 eps (cos.f64 x)) (sin.f64 x)) (+.f64 (log.f64 eps) (log.f64 (cos.f64 x)))) |
(+.f64 (log.f64 eps) (fma.f64 -1/2 (*.f64 (sin.f64 x) (/.f64 eps (cos.f64 x))) (log.f64 (cos.f64 x)))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (+.f64 (log.f64 (cos.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2))) 1/3)))))) |
(fma.f64 -1/2 (/.f64 eps (/.f64 (cos.f64 x) (sin.f64 x))) (+.f64 (+.f64 (log.f64 eps) (log.f64 (cos.f64 x))) (*.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3)))) |
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3)) (log.f64 (cos.f64 x))) (fma.f64 -1/2 (*.f64 (/.f64 eps (cos.f64 x)) (sin.f64 x)) (log.f64 eps))) |
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 x) (/.f64 eps (cos.f64 x))) (log.f64 (cos.f64 x))) (fma.f64 (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3) (*.f64 eps (*.f64 eps 1/2)) (log.f64 eps))) |
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 x) (/.f64 eps (cos.f64 x))) (log.f64 (cos.f64 x))) (fma.f64 (fma.f64 (/.f64 -1/4 (pow.f64 (cos.f64 x) 2)) (pow.f64 (sin.f64 x) 2) -1/3) (*.f64 eps (*.f64 eps 1/2)) (log.f64 eps))) |
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))) (+.f64 (log.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (cos.f64 x) 3))) (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 x) (cos.f64 x))) (*.f64 1/4 (/.f64 (sin.f64 x) (cos.f64 x))))))) (+.f64 (log.f64 (cos.f64 x)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2))) 1/3))))))) |
(fma.f64 -1/2 (/.f64 eps (/.f64 (cos.f64 x) (sin.f64 x))) (+.f64 (log.f64 eps) (fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (cos.f64 x) 3)) (*.f64 (/.f64 (sin.f64 x) (cos.f64 x)) -1/4))) (+.f64 (log.f64 (cos.f64 x)) (*.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3)))))) |
(+.f64 (fma.f64 1/6 (*.f64 (pow.f64 eps 3) (*.f64 -1/4 (+.f64 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 (sin.f64 x) (cos.f64 x))))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3)) (log.f64 (cos.f64 x)))) (fma.f64 -1/2 (*.f64 (/.f64 eps (cos.f64 x)) (sin.f64 x)) (log.f64 eps))) |
(+.f64 (log.f64 eps) (fma.f64 -1/2 (*.f64 (sin.f64 x) (/.f64 eps (cos.f64 x))) (fma.f64 (*.f64 eps eps) (*.f64 1/2 (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) -1/3)) (fma.f64 (pow.f64 eps 3) (*.f64 -1/24 (+.f64 (pow.f64 (/.f64 (sin.f64 x) (cos.f64 x)) 3) (/.f64 (sin.f64 x) (cos.f64 x)))) (log.f64 (cos.f64 x)))))) |
(+.f64 (log.f64 eps) (fma.f64 -1/2 (*.f64 (sin.f64 x) (/.f64 eps (cos.f64 x))) (fma.f64 (*.f64 eps eps) (*.f64 1/2 (fma.f64 (/.f64 -1/4 (pow.f64 (cos.f64 x) 2)) (pow.f64 (sin.f64 x) 2) -1/3)) (fma.f64 (pow.f64 eps 3) (*.f64 -1/24 (+.f64 (pow.f64 (/.f64 (sin.f64 x) (cos.f64 x)) 3) (/.f64 (sin.f64 x) (cos.f64 x)))) (log.f64 (cos.f64 x)))))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) |
(log.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) |
| ✓ | 0.1b | (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) |
| ✓ | 0.1b | (*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
| ✓ | 2.8b | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
Compiled 56 to 25 computations (55.4% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | eps | @ | inf | (*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
| 1.0ms | eps | @ | inf | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
| 1.0ms | eps | @ | -inf | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
| 1.0ms | eps | @ | 0 | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
| 1.0ms | x | @ | inf | (-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
| 1× | batch-egg-rewrite |
| 613× | log-prod_binary64 |
| 464× | fma-def_binary64 |
| 441× | pow-prod-down_binary64 |
| 334× | pow2_binary64 |
| 229× | pow1/3_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 66 |
| 1 | 242 | 60 |
| 2 | 3407 | 60 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 x) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x)) (/.f64 1 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2)) (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3)) (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x)) (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3))) (neg.f64 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x))) (neg.f64 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 (neg.f64 x) 3)) (+.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (-.f64 (pow.f64 (neg.f64 x) 2) (*.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (neg.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (pow.f64 (neg.f64 x) 2)) (-.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2)) (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 x)) (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 x)) (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 x)) (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) x (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 1 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 1 (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 1 (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 1 (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) 1 (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 x) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (neg.f64 (cbrt.f64 x)) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2) (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (neg.f64 (sqrt.f64 x)) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (*.f64 (neg.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) (pow.f64 x 3)) (/.f64 1 (fma.f64 x (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x)) (/.f64 1 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x)) (/.f64 1 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) (*.f64 x x)) (/.f64 1 (+.f64 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 x)) 2) (cbrt.f64 (neg.f64 x)) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) 2) (cbrt.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 x)) (sqrt.f64 (neg.f64 x)) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 x (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (pow.f64 (cbrt.f64 x) 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (-.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) (sqrt.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (cbrt.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 2))) (cbrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) (sqrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (-.f64 (sin.f64 eps) x)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 1) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2) (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 3) (pow.f64 (sin.f64 eps) 3)) (+.f64 (pow.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 2) (-.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 2) (pow.f64 (sin.f64 eps) 2)) (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (neg.f64 (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (sin.f64 eps)) (exp.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (sin.f64 eps))) (exp.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) (+.f64 1 (expm1.f64 (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) (sin.f64 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))) (/.f64 (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4) (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (cbrt.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 2)) (cbrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) (sqrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))) (pow.f64 (cos.f64 eps) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4)) (/.f64 1 (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))) (pow.f64 (cos.f64 eps) 2)) (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3)) (fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))) (pow.f64 (cos.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3)) (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (*.f64 (cos.f64 eps) x) (*.f64 (sin.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4)) (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))) (pow.f64 (cos.f64 eps) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4))) (neg.f64 (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4) (pow.f64 (cos.f64 eps) 2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (neg.f64 (cos.f64 eps))) (pow.f64 (cos.f64 eps) 2)) (fma.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 3) -1/8 (pow.f64 (cos.f64 eps) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (*.f64 x (sin.f64 eps)) 2) 1/4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 eps))) (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (cos.f64 eps)) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 eps))) (+.f64 1 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))) (exp.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 eps)) (*.f64 -1/2 x)) (+.f64 1 (expm1.f64 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))) (+.f64 1 (expm1.f64 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (sin.f64 eps) -1/2) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) 1 (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (*.f64 -1/2 x) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (*.f64 x (sin.f64 eps)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) -1/2) x (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) 1 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (pow.f64 (cbrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) 2) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) 2) (cbrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (*.f64 (sin.f64 eps) -1/2)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 eps) -1/2)) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 eps) -1/2)) x) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 eps)) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sqrt.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (*.f64 (sin.f64 eps) -1/2)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 eps) -1/2)) (*.f64 (sqrt.f64 (*.f64 (sin.f64 eps) -1/2)) x) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) (*.f64 x (*.f64 (sin.f64 eps) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sin.f64 eps)) -1/2 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x -1/2) (sin.f64 eps) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (*.f64 (sin.f64 eps) -1/2)) 2)) (cbrt.f64 (*.f64 (sin.f64 eps) -1/2)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (*.f64 (sin.f64 eps) -1/2))) (sqrt.f64 (*.f64 (sin.f64 eps) -1/2)) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 eps) -1/2) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 eps) -1/2) (sqrt.f64 x)) (sqrt.f64 x) (cos.f64 eps)))))) |
| 1× | egg-herbie |
| 752× | fma-neg_binary64 |
| 580× | fma-def_binary64 |
| 538× | unswap-sqr_binary64 |
| 517× | associate-+l+_binary64 |
| 353× | *-commutative_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 95 | 1528 |
| 1 | 268 | 1506 |
| 2 | 701 | 1392 |
| 3 | 2448 | 1372 |
| 4 | 4827 | 1362 |
| 5 | 7039 | 1362 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (-.f64 (cos.f64 eps) 1) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 1/24 (*.f64 (pow.f64 eps 4) x))))) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 eps x)) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (*.f64 -1/2 (*.f64 eps x))) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 -1/240 (*.f64 (pow.f64 eps 5) x)))) |
(+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 7) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 -1/240 (*.f64 (pow.f64 eps 5) x))))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (cos.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (cos.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
x |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) x) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x)) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
1 |
(+.f64 1 (*.f64 -1/2 (*.f64 eps x))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 1/12 (*.f64 (pow.f64 eps 3) x))))) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(cos.f64 eps) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (-.f64 (cos.f64 eps) 1) x)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (*.f64 (+.f64 (cos.f64 eps) -1) x)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)))) |
(*.f64 x (+.f64 (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) -1)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (*.f64 (+.f64 (cos.f64 eps) -1) x)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)))) |
(*.f64 x (+.f64 (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) -1)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))) |
(*.f64 eps (fma.f64 -1/2 (*.f64 x x) 1)) |
(*.f64 eps (fma.f64 x (*.f64 x -1/2) 1)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 -1/2 (*.f64 x (*.f64 eps eps)))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 eps (*.f64 eps (*.f64 x -1/2)))) |
(+.f64 eps (*.f64 x (*.f64 eps (*.f64 -1/2 (+.f64 eps x))))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (fma.f64 1/12 (*.f64 x x) -1/6) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 (pow.f64 eps 3) (fma.f64 (*.f64 x x) 1/12 -1/6)))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (*.f64 eps (fma.f64 x (*.f64 x 1/12) -1/6))))) |
(+.f64 (*.f64 x (*.f64 eps (*.f64 -1/2 (+.f64 eps x)))) (fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) eps)) |
(+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) (fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 1/24 (*.f64 (pow.f64 eps 4) x))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (fma.f64 1/12 (*.f64 x x) -1/6) (fma.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (*.f64 1/24 (*.f64 x (pow.f64 eps 4)))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (fma.f64 (*.f64 x x) 1/12 -1/6) (fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 1/24 (*.f64 x (pow.f64 eps 4)))))) |
(fma.f64 x (*.f64 eps (*.f64 eps -1/2)) (fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) (*.f64 (pow.f64 eps 4) (*.f64 x 1/24))))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) (+.f64 (*.f64 x (*.f64 eps (*.f64 -1/2 (+.f64 eps x)))) (fma.f64 x (*.f64 1/24 (pow.f64 eps 4)) eps))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) (+.f64 (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) (fma.f64 x (*.f64 1/24 (pow.f64 eps 4)) eps))) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) x) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(-.f64 (fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) x) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 eps x)) |
(*.f64 eps (*.f64 x -1/2)) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (*.f64 -1/2 (*.f64 eps x))) |
(fma.f64 -1/2 (*.f64 eps x) (*.f64 1/12 (*.f64 x (pow.f64 eps 3)))) |
(*.f64 x (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/12))) |
(*.f64 x (fma.f64 eps -1/2 (*.f64 (pow.f64 eps 3) 1/12))) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 -1/240 (*.f64 (pow.f64 eps 5) x)))) |
(fma.f64 1/12 (*.f64 x (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 eps x) (*.f64 -1/240 (*.f64 x (pow.f64 eps 5))))) |
(fma.f64 1/12 (*.f64 x (pow.f64 eps 3)) (*.f64 x (+.f64 (*.f64 eps -1/2) (*.f64 -1/240 (pow.f64 eps 5))))) |
(*.f64 x (+.f64 (*.f64 (pow.f64 eps 3) 1/12) (fma.f64 eps -1/2 (*.f64 -1/240 (pow.f64 eps 5))))) |
(*.f64 x (+.f64 (*.f64 -1/240 (pow.f64 eps 5)) (fma.f64 eps -1/2 (*.f64 (pow.f64 eps 3) 1/12)))) |
(+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 7) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) x)) (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 -1/240 (*.f64 (pow.f64 eps 5) x))))) |
(fma.f64 1/10080 (*.f64 x (pow.f64 eps 7)) (fma.f64 1/12 (*.f64 x (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 eps x) (*.f64 -1/240 (*.f64 x (pow.f64 eps 5)))))) |
(fma.f64 1/10080 (*.f64 x (pow.f64 eps 7)) (fma.f64 1/12 (*.f64 x (pow.f64 eps 3)) (*.f64 x (+.f64 (*.f64 eps -1/2) (*.f64 -1/240 (pow.f64 eps 5)))))) |
(*.f64 x (+.f64 (fma.f64 eps -1/2 (*.f64 -1/240 (pow.f64 eps 5))) (fma.f64 1/10080 (pow.f64 eps 7) (*.f64 (pow.f64 eps 3) 1/12)))) |
(*.f64 x (+.f64 (fma.f64 1/10080 (pow.f64 eps 7) (*.f64 (pow.f64 eps 3) 1/12)) (fma.f64 eps -1/2 (*.f64 -1/240 (pow.f64 eps 5))))) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(sin.f64 eps) |
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) |
(fma.f64 (cos.f64 eps) x (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (cos.f64 eps) x)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (*.f64 (cos.f64 eps) x)) |
(fma.f64 (cos.f64 eps) x (*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)))) |
(*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (*.f64 (cos.f64 eps) x)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (*.f64 (cos.f64 eps) x)) |
(fma.f64 (cos.f64 eps) x (*.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)))) |
(*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
x |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) x) |
(fma.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))) x) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) x) |
(fma.f64 eps (fma.f64 x (*.f64 x -1/2) 1) x) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x)) |
(fma.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) x)) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) x)) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (*.f64 x (fma.f64 eps (*.f64 eps -1/2) 1))) |
(+.f64 eps (+.f64 x (*.f64 x (*.f64 eps (*.f64 -1/2 (+.f64 eps x)))))) |
(*.f64 (fma.f64 eps (*.f64 x -1/2) 1) (+.f64 eps x)) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (+.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 1/12 (pow.f64 x 2)) 1/6)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x))) |
(fma.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (fma.f64 (pow.f64 eps 3) (fma.f64 1/12 (*.f64 x x) -1/6) (fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) x))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 (pow.f64 eps 3) (fma.f64 (*.f64 x x) 1/12 -1/6) (fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) x))) |
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 x (*.f64 eps (*.f64 eps -1/2)) (fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) x))) |
(+.f64 x (+.f64 (*.f64 x (*.f64 eps (*.f64 -1/2 (+.f64 eps x)))) (fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) eps))) |
(fma.f64 (pow.f64 eps 3) (fma.f64 x (*.f64 x 1/12) -1/6) (*.f64 (fma.f64 eps (*.f64 x -1/2) 1) (+.f64 eps x))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) x) (sin.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) |
(fma.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) (sin.f64 eps)) |
1 |
(+.f64 1 (*.f64 -1/2 (*.f64 eps x))) |
(fma.f64 (*.f64 eps -1/2) x 1) |
(fma.f64 x (*.f64 eps -1/2) 1) |
(fma.f64 eps (*.f64 x -1/2) 1) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (*.f64 -1/2 (*.f64 eps x)))) |
(fma.f64 -1/2 (*.f64 eps eps) (+.f64 1 (*.f64 -1/2 (*.f64 eps x)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (*.f64 eps -1/2) x 1)) |
(+.f64 1 (*.f64 (*.f64 eps -1/2) (+.f64 eps x))) |
(+.f64 1 (*.f64 eps (*.f64 -1/2 (+.f64 eps x)))) |
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 eps x)) (*.f64 1/12 (*.f64 (pow.f64 eps 3) x))))) |
(fma.f64 -1/2 (*.f64 eps eps) (+.f64 1 (fma.f64 -1/2 (*.f64 eps x) (*.f64 1/12 (*.f64 x (pow.f64 eps 3)))))) |
(+.f64 (*.f64 x (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/12))) (fma.f64 -1/2 (*.f64 eps eps) 1)) |
(fma.f64 x (fma.f64 eps -1/2 (*.f64 (pow.f64 eps 3) 1/12)) (fma.f64 eps (*.f64 eps -1/2) 1)) |
(fma.f64 eps (*.f64 eps -1/2) (fma.f64 x (fma.f64 eps -1/2 (*.f64 (pow.f64 eps 3) 1/12)) 1)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (sin.f64 eps) x))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(cos.f64 eps) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (cos.f64 eps)) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(*.f64 -1/2 (*.f64 x (sin.f64 eps))) |
(*.f64 (*.f64 -1/2 x) (sin.f64 eps)) |
(*.f64 x (*.f64 (sin.f64 eps) -1/2)) |
(*.f64 (sin.f64 eps) (*.f64 x -1/2)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) x) (cos.f64 eps)) |
(fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
| ✓ | 0.3b | (*.f64 (pow.f64 eps 3) (cos.f64 x)) |
| ✓ | 3.6b | (*.f64 (pow.f64 eps 2) (sin.f64 x)) |
| ✓ | 5.8b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
Compiled 89 to 52 computations (41.6% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | eps | @ | inf | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
| 2.0ms | x | @ | inf | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
| 2.0ms | eps | @ | 0 | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
| 1.0ms | x | @ | -inf | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
| 1.0ms | eps | @ | -inf | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
| 1× | batch-egg-rewrite |
| 760× | log-prod_binary64 |
| 431× | fma-def_binary64 |
| 400× | pow2_binary64 |
| 279× | pow1/3_binary64 |
| 278× | expm1-udef_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 54 |
| 1 | 345 | 54 |
| 2 | 4086 | 54 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (pow.f64 eps 2) (sin.f64 x)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) (/.f64 (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4) (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) (pow.f64 (cbrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) 2) (cbrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) (sqrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3)) (/.f64 1 (fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4)) (/.f64 1 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36)) (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3)) (fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3)) (fma.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4 (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4)) (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3))) (neg.f64 (fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4))) (neg.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36)) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36)) (fma.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) -1/8 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) (-.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36) (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))) (pow.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6) (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)) -1/2) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)) -1/6 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 1 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) -1/2 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) 1 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) (cbrt.f64 (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)) 1/4)) (cbrt.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) (cbrt.f64 -1/6)) (pow.f64 (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) (cbrt.f64 -1/6)) 2) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) (cbrt.f64 -1/6)) 2) (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) (cbrt.f64 -1/6)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2))) (*.f64 (cbrt.f64 (*.f64 eps (*.f64 eps (sin.f64 x)))) -1/2) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) 2) (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) -1/6) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) (sqrt.f64 -1/2)) (*.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) (sqrt.f64 -1/2)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (sqrt.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) (*.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) -1/2) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 eps 3/2)) (*.f64 (*.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 eps 3/2)) -1/6) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cos.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps eps) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (cbrt.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)))) (cbrt.f64 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 eps (sqrt.f64 (sin.f64 x)))) (*.f64 eps (sqrt.f64 (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (cos.f64 x)) (pow.f64 eps 3) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (pow.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) 2)) (*.f64 eps (cbrt.f64 (cos.f64 x))) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 eps 3/2))) (*.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 eps 3/2)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) 1) (cos.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cbrt.f64 (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 eps (*.f64 eps (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 eps (*.f64 eps (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 eps (*.f64 eps (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (sin.f64 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 eps 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 4) (pow.f64 (sin.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 eps) eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 eps (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 eps (*.f64 eps (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 eps 6)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 eps (*.f64 eps (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 2 (log.f64 eps) (log.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 2 (log.f64 eps) (log.f64 (sin.f64 x))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (cos.f64 x)) (pow.f64 eps 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) (pow.f64 (cos.f64 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (pow.f64 eps 3) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) (pow.f64 (cos.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (pow.f64 eps 3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 3 (log.f64 eps) (log.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 3 (log.f64 eps) (log.f64 (cos.f64 x))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6)) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 eps (cbrt.f64 (cos.f64 x))) (cbrt.f64 -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 (pow.f64 eps 6) (pow.f64 (cos.f64 x) 2)) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 x)) (pow.f64 eps 3)) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/6))) 1)))))) |
| 1× | egg-herbie |
| 934× | distribute-rgt-out_binary64 |
| 608× | unswap-sqr_binary64 |
| 596× | distribute-lft-out_binary64 |
| 545× | associate-*l*_binary64 |
| 498× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 71 | 727 |
| 1 | 203 | 727 |
| 2 | 692 | 678 |
| 3 | 3246 | 651 |
| 4 | 6938 | 649 |
| 5 | 7275 | 649 |
| 6 | 7448 | 649 |
| 7 | 7635 | 649 |
| 8 | 7857 | 649 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 -1/6 (pow.f64 eps 3)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/6 (pow.f64 eps 3))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (pow.f64 eps 2) x) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x))) |
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x)))) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(pow.f64 eps 3) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (pow.f64 eps 3)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))) (pow.f64 eps 3))) |
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))) (pow.f64 eps 3)))) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 -1/6 (pow.f64 eps 3)) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3))) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))))) |
(+.f64 (*.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)))))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
| Outputs |
|---|
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))) |
(*.f64 -1/2 (*.f64 (*.f64 (sin.f64 x) eps) eps)) |
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
(*.f64 -1/6 (pow.f64 eps 3)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/6 (pow.f64 eps 3))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (*.f64 -1/6 (pow.f64 eps 3))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps -1/6) (*.f64 -1/2 x))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3)))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (*.f64 x x) 1/12)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) -1/6))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3)))))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 1/12 (*.f64 x (*.f64 x (pow.f64 eps 3))) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/12 (*.f64 eps (*.f64 eps (pow.f64 x 3))))))) |
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) -1/6)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/2 x)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/12 (*.f64 (*.f64 eps (*.f64 x (*.f64 eps x))) (+.f64 eps x))))) |
(+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x (*.f64 x 1/12)) (+.f64 eps x)) (*.f64 -1/2 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x))))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x))))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x))))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x)))) |
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x))))) |
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x)))) |
(*.f64 (pow.f64 eps 2) x) |
(*.f64 (*.f64 eps eps) x) |
(*.f64 eps (*.f64 eps x)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (*.f64 (pow.f64 eps 2) x)) |
(fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (*.f64 (*.f64 eps eps) x)) |
(fma.f64 (*.f64 eps eps) x (*.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) -1/6))) |
(*.f64 (*.f64 eps eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) |
(*.f64 eps (*.f64 eps (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x))) |
(fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 (*.f64 eps eps) x))) |
(fma.f64 -1/6 (*.f64 eps (*.f64 eps (pow.f64 x 3))) (fma.f64 (*.f64 eps eps) x (*.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5))))) |
(fma.f64 (*.f64 eps eps) (*.f64 1/120 (pow.f64 x 5)) (*.f64 (*.f64 eps eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))) x)) |
(*.f64 (*.f64 eps eps) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))))) |
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x)))) |
(fma.f64 -1/5040 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 (*.f64 eps eps) x)))) |
(fma.f64 -1/5040 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 eps (*.f64 eps (pow.f64 x 3))) (fma.f64 (*.f64 eps eps) x (*.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5)))))) |
(+.f64 (*.f64 (*.f64 eps eps) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 -1/5040 (pow.f64 x 7))))) |
(*.f64 (*.f64 eps eps) (+.f64 (+.f64 x (*.f64 1/120 (pow.f64 x 5))) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (*.f64 eps eps) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 -1/6 (pow.f64 x 3)))))) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(pow.f64 eps 3) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (pow.f64 eps 3)) |
(fma.f64 -1/2 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (pow.f64 eps 3)) |
(fma.f64 (*.f64 -1/2 (pow.f64 eps 3)) (*.f64 x x) (pow.f64 eps 3)) |
(*.f64 (+.f64 (*.f64 x (*.f64 -1/2 x)) 1) (pow.f64 eps 3)) |
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (pow.f64 eps 3)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))) (pow.f64 eps 3))) |
(fma.f64 -1/2 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) (pow.f64 eps 3))) |
(fma.f64 -1/2 (*.f64 x (*.f64 x (pow.f64 eps 3))) (fma.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) (pow.f64 eps 3))) |
(+.f64 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 -1/2 x)) (*.f64 1/24 (pow.f64 x 4))))) |
(*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1 (*.f64 1/24 (pow.f64 x 4))))) |
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))) (pow.f64 eps 3)))) |
(fma.f64 -1/720 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) (fma.f64 -1/2 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) (pow.f64 eps 3)))) |
(fma.f64 -1/720 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) (fma.f64 -1/2 (*.f64 x (*.f64 x (pow.f64 eps 3))) (fma.f64 1/24 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) (pow.f64 eps 3)))) |
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) 1) (pow.f64 eps 3)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 -1/2 x)) (*.f64 -1/720 (pow.f64 x 6))))) |
(+.f64 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 x (+.f64 (*.f64 -1/2 x) (*.f64 (pow.f64 x 5) -1/720)))))) |
(+.f64 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/24 (pow.f64 x 4)))))) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 (cos.f64 x) (pow.f64 eps 3)) |
(*.f64 (pow.f64 eps 3) (cos.f64 x)) |
(*.f64 -1/6 (pow.f64 eps 3)) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3))) |
(fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (*.f64 -1/6 (pow.f64 eps 3))) |
(fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (*.f64 x x) 1/12))) |
(*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) -1/6)) |
(*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12)))) |
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))))) |
(fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) -1/144))) |
(fma.f64 1/12 (*.f64 x (*.f64 x (pow.f64 eps 3))) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (pow.f64 x 4) -1/144)))) |
(fma.f64 (pow.f64 eps 3) (*.f64 (pow.f64 x 4) -1/144) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) -1/6))) |
(*.f64 (pow.f64 eps 3) (+.f64 -1/6 (+.f64 (*.f64 (pow.f64 x 4) -1/144) (*.f64 x (*.f64 x 1/12))))) |
(+.f64 (*.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)))))) |
(fma.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)) -1/144)))) |
(fma.f64 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) 1/4320 (fma.f64 1/12 (*.f64 x (*.f64 x (pow.f64 eps 3))) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (pow.f64 x 4) -1/144))))) |
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) -1/6)) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 (pow.f64 x 4) -1/144) (*.f64 (pow.f64 x 6) 1/4320)))) |
(*.f64 (pow.f64 eps 3) (+.f64 (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))) (+.f64 (*.f64 (pow.f64 x 4) -1/144) (*.f64 (pow.f64 x 6) 1/4320)))) |
(*.f64 (pow.f64 eps 3) (+.f64 (*.f64 (pow.f64 x 4) -1/144) (+.f64 -1/6 (*.f64 (*.f64 x x) (+.f64 (*.f64 1/4320 (pow.f64 x 4)) 1/12))))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) |
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) |
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))) |
Compiled 22821 to 9192 computations (59.7% saved)
56 alts after pruning (53 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1031 | 39 | 1070 |
| Fresh | 20 | 14 | 34 |
| Picked | 1 | 0 | 1 |
| Done | 2 | 3 | 5 |
| Total | 1054 | 56 | 1110 |
| Status | Error | Program |
|---|---|---|
| ✓ | 30.2b | (*.f64 (cos.f64 x) eps) |
| 32.7b | (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) | |
| 30.4b | (*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) | |
| ▶ | 40.3b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
| 60.2b | (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) | |
| 40.3b | (-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 30.6b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) | |
| 44.8b | (fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) | |
| 40.7b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) | |
| 25.0b | (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 46.3b | (-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) | |
| 48.4b | (+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) | |
| 53.3b | (exp.f64 (log.f64 (fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))))) | |
| 40.1b | (-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 40.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) | |
| 49.9b | (exp.f64 (log.f64 (sin.f64 eps))) | |
| 30.4b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) | |
| ▶ | 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 46.4b | (-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) | |
| 31.7b | (sin.f64 eps) | |
| 52.4b | (-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) | |
| 24.8b | (-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) | |
| 51.8b | (pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) | |
| 41.3b | (-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) x) | |
| 30.7b | (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps))) | |
| 46.5b | eps | |
| 40.8b | (-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) | |
| 30.5b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) | |
| 61.7b | (-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) | |
| ✓ | 40.1b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 40.5b | (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) | |
| 24.2b | (-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| ✓ | 24.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 62.3b | (*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) | |
| 46.4b | (log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) | |
| ▶ | 61.2b | (-.f64 x x) |
| 24.3b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) | |
| 52.9b | (sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2)) | |
| 38.7b | (fma.f64 (*.f64 (sin.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 46.9b | (pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) | |
| 24.3b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) | |
| 25.0b | (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 41.0b | (*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) | |
| 30.6b | (fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/24))))) | |
| ▶ | 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| ▶ | 53.1b | (exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
| 31.0b | (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) | |
| 38.2b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) | |
| 44.3b | (fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 44.8b | (exp.f64 (log.f64 (-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)))) | |
| 57.0b | (pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3) | |
| 24.3b | (-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) | |
| 30.8b | (-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) | |
| 51.1b | (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3)) |
Compiled 1533 to 1013 computations (33.9% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
| ✓ | 0.2b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| ✓ | 1.9b | (+.f64 (cos.f64 eps) -1) |
Compiled 36 to 16 computations (55.6% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | -inf | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 1.0ms | x | @ | -inf | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 1.0ms | x | @ | inf | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 1.0ms | eps | @ | inf | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 1.0ms | eps | @ | 0 | (+.f64 (cos.f64 eps) -1) |
| 1× | batch-egg-rewrite |
| 512× | log-prod_binary64 |
| 405× | exp-prod_binary64 |
| 324× | pow-prod-down_binary64 |
| 323× | prod-diff_binary64 |
| 298× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 36 |
| 1 | 221 | 36 |
| 2 | 2725 | 36 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (cos.f64 eps) -1) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1)) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (neg.f64 (pow.f64 (sin.f64 eps) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2))) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1)) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (cos.f64 eps) 1) (neg.f64 (pow.f64 (sin.f64 eps) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (+.f64 (cos.f64 eps) -1))) 2)) (cbrt.f64 (log.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))) (sqrt.f64 (log.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (cos.f64 eps) -1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 (cos.f64 eps) -1))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 (cos.f64 eps) -1)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 eps)) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 1) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3) (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (-.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2) (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 2)) (cbrt.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))) (sqrt.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 -1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (sin.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) -1) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (sin.f64 x)) (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (sin.f64 x)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (-.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) 1) (*.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (neg.f64 (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 2)) (cbrt.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))) (sqrt.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 -1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sin.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sin.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) -1 (*.f64 (sin.f64 x) (cos.f64 eps))))))) |
| 1× | egg-herbie |
| 579× | fma-neg_binary64 |
| 487× | *-commutative_binary64 |
| 486× | fma-def_binary64 |
| 453× | associate-+l+_binary64 |
| 384× | unswap-sqr_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 82 | 1018 |
| 1 | 227 | 995 |
| 2 | 649 | 949 |
| 3 | 2331 | 936 |
| 4 | 5452 | 936 |
| 5 | 7514 | 936 |
| 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 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (sin.f64 eps)))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/40320 (*.f64 (pow.f64 eps 8) (sin.f64 x))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (-.f64 (cos.f64 eps) 1) x) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (*.f64 (-.f64 (cos.f64 eps) 1) x)) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (*.f64 1/120 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 5))))) |
(+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (*.f64 1/120 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 5)))))) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
| Outputs |
|---|
(*.f64 -1/2 (pow.f64 eps 2)) |
(*.f64 -1/2 (*.f64 eps eps)) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2))) |
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) |
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps)))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6)))) |
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8))))) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(-.f64 (cos.f64 eps) 1) |
(+.f64 (cos.f64 eps) -1) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (*.f64 eps (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) (sin.f64 x))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 eps))) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 eps))) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (sin.f64 eps)))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (+.f64 (*.f64 x (*.f64 -1/2 x)) 1) (sin.f64 eps))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)) |
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))) |
(*.f64 (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps))) (sin.f64 x)) |
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4))) (sin.f64 x)) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (fma.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))) |
(*.f64 (sin.f64 x) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps))))) |
(*.f64 (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6)))) (sin.f64 x)) |
(+.f64 (*.f64 1/40320 (*.f64 (pow.f64 eps 8) (sin.f64 x))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/40320 (*.f64 (pow.f64 eps 8) (sin.f64 x)) (fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (fma.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))) |
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6)))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/40320 (pow.f64 eps 8)) (*.f64 1/24 (pow.f64 eps 4))))) |
(*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))) |
(*.f64 (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))))) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (-.f64 (cos.f64 eps) 1) x) |
(*.f64 (+.f64 (cos.f64 eps) -1) x) |
(-.f64 (*.f64 (cos.f64 eps) x) x) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (*.f64 (-.f64 (cos.f64 eps) 1) x)) |
(fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (*.f64 (+.f64 (cos.f64 eps) -1) x)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)))) |
(*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) |
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (*.f64 1/120 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 5))))) |
(fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 1/120 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 5))))) |
(fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (cos.f64 eps) -1) (*.f64 (pow.f64 x 5) 1/120)))) |
(fma.f64 (pow.f64 x 5) (fma.f64 (cos.f64 eps) 1/120 -1/120) (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 1/120 (pow.f64 x 5))))) |
(+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (*.f64 1/120 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 5)))))) |
(fma.f64 -1/5040 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 1/120 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 5)))))) |
(fma.f64 -1/5040 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (cos.f64 eps) -1) (*.f64 (pow.f64 x 5) 1/120))))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7))))) |
(*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 1/120 (pow.f64 x 5))))) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)) |
(*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) |
Compiled 6 to 3 computations (50% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| ✓ | 0.2b | (*.f64 (+.f64 x (+.f64 x eps)) 1/2) |
| ✓ | 3.0b | (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
| ✓ | 3.4b | (+.f64 x (-.f64 eps x)) |
Compiled 88 to 34 computations (61.4% saved)
24 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 8.0ms | x | @ | inf | (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1.0ms | eps | @ | inf | (+.f64 x (-.f64 eps x)) |
| 1.0ms | x | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1.0ms | eps | @ | 0 | (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| 1.0ms | x | @ | 0 | (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
| 1× | batch-egg-rewrite |
| 764× | log-prod_binary64 |
| 458× | fma-neg_binary64 |
| 290× | expm1-udef_binary64 |
| 290× | log1p-udef_binary64 |
| 229× | log-pow_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 55 |
| 1 | 305 | 55 |
| 2 | 4758 | 55 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 x (-.f64 eps x)) |
(cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) |
(*.f64 (+.f64 x (+.f64 x eps)) 1/2) |
(*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 eps (-.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 x (-.f64 eps x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (+.f64 (-.f64 x eps) x)) (/.f64 (pow.f64 (-.f64 eps x) 2) (+.f64 (-.f64 x eps) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (-.f64 eps x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (-.f64 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 x (-.f64 eps x))) (pow.f64 (cbrt.f64 (+.f64 x (-.f64 eps x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 x (-.f64 eps x))) 2) (cbrt.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 x (-.f64 eps x))) (sqrt.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (-.f64 eps x) 3)) (/.f64 1 (fma.f64 x x (*.f64 (-.f64 eps x) (-.f64 (-.f64 eps x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (-.f64 eps x) (-.f64 (-.f64 eps x) x))) (+.f64 (pow.f64 x 3) (pow.f64 (-.f64 eps x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (-.f64 x eps) x) (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (-.f64 eps x) 3)) (fma.f64 x x (*.f64 (-.f64 eps x) (-.f64 (-.f64 eps x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (-.f64 eps x) 3)) (+.f64 (pow.f64 (-.f64 eps x) 2) (-.f64 (*.f64 x x) (*.f64 x (-.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (+.f64 (-.f64 x eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (-.f64 eps x) 3))) (neg.f64 (fma.f64 x x (*.f64 (-.f64 eps x) (-.f64 (-.f64 eps x) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2))) (neg.f64 (+.f64 (-.f64 x eps) x)))))) (#(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) (+.f64 (*.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)) (+.f64 eps (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 eps x) 2) (*.f64 x x)) (-.f64 (-.f64 eps x) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (-.f64 eps x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 x (-.f64 eps x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 x (-.f64 eps x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 x (-.f64 eps x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 x (-.f64 eps x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 x (-.f64 eps x)))))))) (#(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 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (-.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (-.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 eps x))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 eps x)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 eps x))) (+.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 (+.f64 x (-.f64 eps x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 x (-.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 x (-.f64 eps x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (neg.f64 (-.f64 x 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 1 x (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (neg.f64 (-.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 eps x) 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 (pow.f64 (cbrt.f64 x) 2) (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) (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)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (neg.f64 (-.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (-.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 eps x)) 2) (cbrt.f64 (-.f64 eps x)) x)))) (#(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)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (neg.f64 (-.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 eps x)) (sqrt.f64 (-.f64 eps x)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 eps 3) (pow.f64 x 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 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))) (cbrt.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x x) 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x x) 1/2)) (sin.f64 (*.f64 eps 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 x eps)))) (*.f64 (sin.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 x eps))) (cos.f64 (*.f64 1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (sin.f64 (*.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 x x))) (cos.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 x x))) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 2) (cbrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sqrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (*.f64 (+.f64 x eps) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x eps) 1/2) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x x) 1/2) (*.f64 eps 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 x) (*.f64 1/2 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (+.f64 x eps)) (*.f64 1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (+.f64 x x)) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x)))) (cbrt.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) 1/2) (fma.f64 x x (*.f64 (+.f64 x eps) (+.f64 x (-.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) (fma.f64 x x (*.f64 (+.f64 x eps) (+.f64 x (-.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2))) (-.f64 (-.f64 x x) eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 (+.f64 eps (+.f64 x x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (+.f64 eps (+.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (*.f64 1/2 (-.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x))))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (*.f64 1/2 (-.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x))))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (*.f64 1/2 (-.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x))))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x (-.f64 eps x)) (+.f64 eps (+.f64 x x))))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 3) (pow.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) 3) (pow.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 eps (+.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)))) 1)))))) |
| 1× | egg-herbie |
| 643× | fma-def_binary64 |
| 581× | neg-sub0_binary64 |
| 542× | neg-mul-1_binary64 |
| 363× | associate-*l*_binary64 |
| 355× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 95 | 1098 |
| 1 | 273 | 1024 |
| 2 | 752 | 872 |
| 3 | 2989 | 861 |
| 4 | 7016 | 851 |
| 1× | node limit |
| Inputs |
|---|
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
(cos.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (cos.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 x) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (cos.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 1/2 (*.f64 eps (cos.f64 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))) (*.f64 1/48 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
| Outputs |
|---|
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
eps |
(cos.f64 (*.f64 1/2 eps)) |
(cos.f64 (*.f64 eps 1/2)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (cos.f64 (*.f64 1/2 eps))) |
(fma.f64 -1 (*.f64 (sin.f64 (*.f64 eps 1/2)) x) (cos.f64 (*.f64 eps 1/2))) |
(fma.f64 (neg.f64 (sin.f64 (*.f64 eps 1/2))) x (cos.f64 (*.f64 eps 1/2))) |
(-.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) x)) |
(fma.f64 x (sin.f64 (*.f64 eps -1/2)) (cos.f64 (*.f64 eps 1/2))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (cos.f64 (*.f64 1/2 eps)))) |
(fma.f64 -1 (*.f64 (sin.f64 (*.f64 eps 1/2)) x) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x)) (cos.f64 (*.f64 eps 1/2)))) |
(fma.f64 (neg.f64 (sin.f64 (*.f64 eps 1/2))) x (fma.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) -1/2) (*.f64 x x) (cos.f64 (*.f64 eps 1/2)))) |
(-.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) x)) |
(-.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) x)) |
(fma.f64 x (sin.f64 (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2)))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(fma.f64 -1 (*.f64 (sin.f64 (*.f64 eps 1/2)) x) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (*.f64 1/6 (sin.f64 (*.f64 eps 1/2))) (pow.f64 x 3)))) |
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x)) (fma.f64 1/6 (*.f64 (sin.f64 (*.f64 eps 1/2)) (pow.f64 x 3)) (cos.f64 (*.f64 eps 1/2)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) x)) |
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) |
(-.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 x (*.f64 1/6 (pow.f64 x 3))))) |
(fma.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 x) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (cos.f64 x)) |
(fma.f64 eps (*.f64 -1/2 (sin.f64 x)) (cos.f64 x)) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (cos.f64 x))) |
(fma.f64 (fma.f64 (*.f64 eps -1/8) eps 1) (cos.f64 x) (*.f64 eps (*.f64 -1/2 (sin.f64 x)))) |
(fma.f64 eps (*.f64 -1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (fma.f64 -1/8 (*.f64 eps eps) 1))) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (+.f64 (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (cos.f64 x)) (*.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 3))))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (cos.f64 x)))) |
(fma.f64 (fma.f64 (*.f64 eps -1/8) eps 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 eps -1/2)))) |
(fma.f64 (fma.f64 -1/8 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 eps -1/2)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2)))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)))) |
(-.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) x))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (fma.f64 x (sin.f64 (*.f64 eps -1/2)) (cos.f64 (*.f64 eps 1/2)))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (fma.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x x) -1/2)))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(-.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 (*.f64 eps 1/2)))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) x))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (fma.f64 x (sin.f64 (*.f64 eps -1/2)) (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2))))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 1/6 (*.f64 (pow.f64 x 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)))))) |
(-.f64 (fma.f64 1/6 (*.f64 (pow.f64 x 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x x) -1/2))))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(+.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 (*.f64 eps 1/2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 (neg.f64 x) (*.f64 1/6 (pow.f64 x 3))))) |
(fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 (*.f64 eps 1/2))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 eps (*.f64 (cos.f64 x) 1/2)) |
(*.f64 (*.f64 eps 1/2) (cos.f64 x)) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x)))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 eps (cos.f64 x)))) |
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) -1/4))) |
(fma.f64 eps (*.f64 1/2 (cos.f64 x)) (*.f64 eps (*.f64 eps (*.f64 (sin.f64 x) -1/4)))) |
(*.f64 eps (+.f64 (*.f64 1/2 (cos.f64 x)) (*.f64 (sin.f64 x) (*.f64 eps -1/4)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/12)))) |
(fma.f64 -1/4 (*.f64 eps (*.f64 eps (sin.f64 x))) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (cos.f64 x) (*.f64 -1/12 (pow.f64 eps 3))))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/4)) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps 1/2) (*.f64 (pow.f64 eps 3) -1/12)))) |
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))) (*.f64 1/48 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/12) (*.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 4)))))) |
(fma.f64 -1/4 (*.f64 eps (*.f64 eps (sin.f64 x))) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (*.f64 (cos.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))))) |
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 eps 1/2) (*.f64 (pow.f64 eps 3) -1/12))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/48 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/4))))) |
(+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 x 2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps)))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (fma.f64 eps 1/2 x))) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) |
| ✓ | 0.5b | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| ✓ | 0.6b | (exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
Compiled 26 to 7 computations (73.1% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 18.0ms | x | @ | inf | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 18.0ms | eps | @ | -inf | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 16.0ms | x | @ | -inf | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 15.0ms | eps | @ | inf | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 1.0ms | eps | @ | 0 | (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 1× | batch-egg-rewrite |
| 906× | pow1_binary64 |
| 841× | add-log-exp_binary64 |
| 841× | log1p-expm1-u_binary64 |
| 841× | expm1-log1p-u_binary64 |
| 824× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 26 |
| 1 | 161 | 26 |
| 2 | 2191 | 26 |
| 1× | node limit |
| Inputs |
|---|
(exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 eps) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 eps) 3) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))) (/.f64 (pow.f64 (sin.f64 x) 3) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (sin.f64 eps) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 (*.f64 (-.f64 eps x) 1/2))) (cos.f64 (*.f64 (+.f64 eps x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))) (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 eps) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x)))) (-.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2)) (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (cbrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 2) (log.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2)) (log.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (log.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))) (log.f64 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))) (log.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2) (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 (*.f64 (-.f64 eps x) 1/2))) (cos.f64 (*.f64 (+.f64 eps x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))) (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 eps) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x)))) (-.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))) (sqrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2)) (cbrt.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (cbrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))))) |
| 1× | egg-herbie |
| 431× | associate-*l/_binary64 |
| 386× | associate-+l+_binary64 |
| 372× | associate-/r*_binary64 |
| 352× | associate-*r/_binary64 |
| 306× | times-frac_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 74 | 539 |
| 1 | 213 | 518 |
| 2 | 592 | 509 |
| 3 | 2315 | 498 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(log.f64 (neg.f64 (sin.f64 x))) |
(+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 -1 (/.f64 eps (sin.f64 x)))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 -1 (/.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (-.f64 (/.f64 1 (sin.f64 x)) (*.f64 2 (/.f64 1 (pow.f64 (sin.f64 x) 3)))))) (*.f64 -1 (/.f64 eps (sin.f64 x)))))) |
(log.f64 (sin.f64 eps)) |
(+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (pow.f64 (sin.f64 eps) 2))) (+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps)))) |
(+.f64 (*.f64 1/6 (*.f64 (-.f64 (/.f64 1 (sin.f64 eps)) (*.f64 2 (/.f64 1 (pow.f64 (sin.f64 eps) 3)))) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (pow.f64 (sin.f64 eps) 2))) (+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps))))) |
(*.f64 -1 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
| Outputs |
|---|
(*.f64 -1 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 (neg.f64 (sin.f64 x)) eps) |
(-.f64 eps (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (-.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sin.f64 x))) |
(-.f64 (fma.f64 -1/6 (pow.f64 eps 3) eps) (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 eps (-.f64 (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))) (sin.f64 x))) |
(+.f64 (-.f64 eps (sin.f64 x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5)))) |
(fma.f64 -1/6 (pow.f64 eps 3) (-.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (sin.f64 x))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(fma.f64 -1 x (sin.f64 eps)) |
(-.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps))) x) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(log.f64 (neg.f64 (sin.f64 x))) |
(+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 -1 (/.f64 eps (sin.f64 x)))) |
(+.f64 (log.f64 (neg.f64 (sin.f64 x))) (neg.f64 (/.f64 eps (sin.f64 x)))) |
(-.f64 (log.f64 (neg.f64 (sin.f64 x))) (/.f64 eps (sin.f64 x))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 -1 (/.f64 eps (sin.f64 x))))) |
(fma.f64 -1/2 (/.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (neg.f64 (/.f64 eps (sin.f64 x))))) |
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) (log.f64 (neg.f64 (sin.f64 x)))) (/.f64 eps (sin.f64 x))) |
(+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 (/.f64 eps (sin.f64 x)) (+.f64 -1 (/.f64 eps (/.f64 (sin.f64 x) -1/2))))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 eps 2) (pow.f64 (sin.f64 x) 2))) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (-.f64 (/.f64 1 (sin.f64 x)) (*.f64 2 (/.f64 1 (pow.f64 (sin.f64 x) 3)))))) (*.f64 -1 (/.f64 eps (sin.f64 x)))))) |
(fma.f64 -1/2 (/.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (fma.f64 1/6 (*.f64 (pow.f64 eps 3) (-.f64 (/.f64 1 (sin.f64 x)) (/.f64 2 (pow.f64 (sin.f64 x) 3)))) (neg.f64 (/.f64 eps (sin.f64 x)))))) |
(+.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) (log.f64 (neg.f64 (sin.f64 x)))) (/.f64 eps (sin.f64 x))) (*.f64 1/6 (*.f64 (pow.f64 eps 3) (-.f64 (/.f64 1 (sin.f64 x)) (/.f64 2 (pow.f64 (sin.f64 x) 3)))))) |
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 eps eps) (pow.f64 (sin.f64 x) 2)) (fma.f64 (+.f64 (/.f64 1 (sin.f64 x)) (/.f64 -2 (pow.f64 (sin.f64 x) 3))) (*.f64 (pow.f64 eps 3) 1/6) (log.f64 (neg.f64 (sin.f64 x))))) (/.f64 eps (sin.f64 x))) |
(fma.f64 (pow.f64 eps 3) (+.f64 (/.f64 1/6 (sin.f64 x)) (/.f64 -1/3 (pow.f64 (sin.f64 x) 3))) (+.f64 (log.f64 (neg.f64 (sin.f64 x))) (*.f64 (/.f64 eps (sin.f64 x)) (+.f64 -1 (/.f64 eps (/.f64 (sin.f64 x) -1/2)))))) |
(log.f64 (sin.f64 eps)) |
(+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps))) |
(fma.f64 -1 (/.f64 x (sin.f64 eps)) (log.f64 (sin.f64 eps))) |
(-.f64 (log.f64 (sin.f64 eps)) (/.f64 x (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (pow.f64 (sin.f64 eps) 2))) (+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps)))) |
(fma.f64 -1/2 (/.f64 (*.f64 x x) (pow.f64 (sin.f64 eps) 2)) (fma.f64 -1 (/.f64 x (sin.f64 eps)) (log.f64 (sin.f64 eps)))) |
(fma.f64 -1/2 (/.f64 x (/.f64 (pow.f64 (sin.f64 eps) 2) x)) (-.f64 (log.f64 (sin.f64 eps)) (/.f64 x (sin.f64 eps)))) |
(-.f64 (fma.f64 -1/2 (/.f64 x (/.f64 (pow.f64 (sin.f64 eps) 2) x)) (log.f64 (sin.f64 eps))) (/.f64 x (sin.f64 eps))) |
(+.f64 (log.f64 (sin.f64 eps)) (*.f64 (/.f64 x (sin.f64 eps)) (+.f64 -1 (*.f64 -1/2 (/.f64 x (sin.f64 eps)))))) |
(+.f64 (*.f64 1/6 (*.f64 (-.f64 (/.f64 1 (sin.f64 eps)) (*.f64 2 (/.f64 1 (pow.f64 (sin.f64 eps) 3)))) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (pow.f64 (sin.f64 eps) 2))) (+.f64 (*.f64 -1 (/.f64 x (sin.f64 eps))) (log.f64 (sin.f64 eps))))) |
(fma.f64 1/6 (*.f64 (pow.f64 x 3) (-.f64 (/.f64 1 (sin.f64 eps)) (/.f64 2 (pow.f64 (sin.f64 eps) 3)))) (fma.f64 -1/2 (/.f64 (*.f64 x x) (pow.f64 (sin.f64 eps) 2)) (fma.f64 -1 (/.f64 x (sin.f64 eps)) (log.f64 (sin.f64 eps))))) |
(fma.f64 1/6 (*.f64 (pow.f64 x 3) (+.f64 (/.f64 1 (sin.f64 eps)) (/.f64 -2 (pow.f64 (sin.f64 eps) 3)))) (fma.f64 -1/2 (/.f64 x (/.f64 (pow.f64 (sin.f64 eps) 2) x)) (-.f64 (log.f64 (sin.f64 eps)) (/.f64 x (sin.f64 eps))))) |
(fma.f64 (pow.f64 x 3) (+.f64 (/.f64 1/6 (sin.f64 eps)) (/.f64 -1/3 (pow.f64 (sin.f64 eps) 3))) (-.f64 (fma.f64 -1/2 (/.f64 x (/.f64 (pow.f64 (sin.f64 eps) 2) x)) (log.f64 (sin.f64 eps))) (/.f64 x (sin.f64 eps)))) |
(+.f64 (log.f64 (sin.f64 eps)) (fma.f64 (pow.f64 x 3) (+.f64 (/.f64 1/6 (sin.f64 eps)) (/.f64 -1/3 (pow.f64 (sin.f64 eps) 3))) (*.f64 (/.f64 x (sin.f64 eps)) (+.f64 -1 (*.f64 -1/2 (/.f64 x (sin.f64 eps))))))) |
(*.f64 -1 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 (neg.f64 (sin.f64 x)) eps) |
(-.f64 eps (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (-.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sin.f64 x))) |
(-.f64 (fma.f64 -1/6 (pow.f64 eps 3) eps) (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 eps (-.f64 (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))) (sin.f64 x))) |
(+.f64 (-.f64 eps (sin.f64 x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5)))) |
(fma.f64 -1/6 (pow.f64 eps 3) (-.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (sin.f64 x))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(fma.f64 -1 x (sin.f64 eps)) |
(-.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps))) x) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
| 0.1b | (*.f64 (cos.f64 x) (sin.f64 eps)) | |
| ✓ | 0.1b | (*.f64 (sin.f64 x) (cos.f64 eps)) |
| ✓ | 3.5b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
Compiled 44 to 10 computations (77.3% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 167.0ms | eps | @ | 0 | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 1.0ms | eps | @ | inf | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 1.0ms | x | @ | -inf | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 1.0ms | eps | @ | -inf | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 1.0ms | x | @ | inf | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 1× | batch-egg-rewrite |
| 664× | fma-def_binary64 |
| 634× | log-prod_binary64 |
| 370× | fma-neg_binary64 |
| 348× | pow2_binary64 |
| 238× | pow1/3_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 42 |
| 1 | 247 | 32 |
| 2 | 3655 | 32 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(*.f64 (sin.f64 x) (cos.f64 eps)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))) (/.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 2) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (cos.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3)) (/.f64 1 (fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))) (/.f64 1 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)) (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3)) (fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3)) (+.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 2) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (*.f64 (sin.f64 x) (*.f64 (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3))) (neg.f64 (fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)))) (neg.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))) (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (*.f64 2 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)))) (*.f64 2 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (*.f64 2 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)))) (*.f64 2 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) 2 (*.f64 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))))) (*.f64 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) 2 (*.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))))) (*.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 3) (pow.f64 (sin.f64 x) 3)) (+.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 2) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)) (*.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))) (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)) (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))) (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (sin.f64 eps) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1 (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1 (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (sin.f64 eps)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (sin.f64 eps)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (+.f64 x eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (cos.f64 x)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (sin.f64 x)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (sin.f64 eps)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (sin.f64 eps)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (cos.f64 x)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (sin.f64 x)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (sin.f64 eps)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (sin.f64 eps)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))) 1/2 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 2) (cbrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) (sqrt.f64 (sin.f64 (+.f64 x eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (cos.f64 x)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (fma.f64 -1 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 x eps)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (cos.f64 x)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (-.f64 (pow.f64 (neg.f64 (sin.f64 x)) 2) (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (neg.f64 (sin.f64 x)) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (exp.f64 (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps)) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (/.f64 1 (exp.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sin.f64 x))) (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (sin.f64 x))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1 (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1 (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (cos.f64 x)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (neg.f64 (cbrt.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (cos.f64 x)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 x)) (neg.f64 (sqrt.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (fma.f64 (sin.f64 x) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (sin.f64 x))) 2) (cbrt.f64 (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (sin.f64 x))) (sqrt.f64 (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (cos.f64 x)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (cos.f64 x)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (sin.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (cos.f64 x)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (sin.f64 x))) (+.f64 (neg.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2)) (cbrt.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) 1)))))) |
| 1× | egg-herbie |
| 542× | fma-def_binary64 |
| 448× | *-commutative_binary64 |
| 401× | fma-neg_binary64 |
| 392× | cancel-sign-sub-inv_binary64 |
| 316× | distribute-rgt-out_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 90 | 953 |
| 1 | 262 | 937 |
| 2 | 729 | 868 |
| 3 | 2400 | 856 |
| 4 | 4716 | 854 |
| 5 | 7825 | 854 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(*.f64 (cos.f64 eps) x) |
(+.f64 (*.f64 (cos.f64 eps) x) (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)))) |
(+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))) |
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(sin.f64 x) |
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps)))) |
(*.f64 -1 (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(fma.f64 (cos.f64 eps) x (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 x (*.f64 x -1/2))))) |
(fma.f64 x (+.f64 (*.f64 (sin.f64 eps) (*.f64 x -1/2)) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))) |
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)))) |
(fma.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 1/24 (pow.f64 eps 4))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(*.f64 (cos.f64 eps) x) |
(+.f64 (*.f64 (cos.f64 eps) x) (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)))) |
(fma.f64 (cos.f64 eps) x (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)))) |
(fma.f64 (cos.f64 eps) x (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 3) -1/6))) |
(*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) |
(*.f64 (cos.f64 eps) (-.f64 x (*.f64 1/6 (pow.f64 x 3)))) |
(+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))) |
(fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))) |
(fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 5) 1/120)))) |
(fma.f64 (cos.f64 eps) x (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (cos.f64 eps) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))))) |
(*.f64 (cos.f64 eps) (+.f64 (-.f64 x (*.f64 1/6 (pow.f64 x 3))) (*.f64 1/120 (pow.f64 x 5)))) |
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))) |
(fma.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))) |
(fma.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 5) 1/120))))) |
(+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) x))) |
(*.f64 (cos.f64 eps) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3))) (+.f64 x (*.f64 -1/5040 (pow.f64 x 7))))) |
(*.f64 (cos.f64 eps) (+.f64 (-.f64 x (*.f64 1/6 (pow.f64 x 3))) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7))))) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(sin.f64 x) |
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))) |
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x)) |
(*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x))) |
(*.f64 (sin.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps eps) 1))) |
(*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (fma.f64 1/24 (pow.f64 eps 4) 1))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (sin.f64 x) (fma.f64 -1/720 (*.f64 (sin.f64 x) (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))) |
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 -1/720 (pow.f64 eps 6)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) 1) (sin.f64 x))) |
(fma.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) (*.f64 (sin.f64 x) (fma.f64 1/24 (pow.f64 eps 4) 1))) |
(*.f64 (sin.f64 x) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) (fma.f64 1/24 (pow.f64 eps 4) 1))) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(fma.f64 -1 x (sin.f64 eps)) |
(-.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 -1 x (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps)) x) |
(fma.f64 (*.f64 x x) (*.f64 (sin.f64 eps) -1/2) (-.f64 (sin.f64 eps) x)) |
(fma.f64 x (*.f64 (sin.f64 eps) (*.f64 x -1/2)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x)) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x))) |
(fma.f64 (*.f64 x x) (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 x 1/6)) (-.f64 (sin.f64 eps) x)) |
(*.f64 -1 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x))) |
(fma.f64 (cos.f64 x) eps (neg.f64 (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 eps (cos.f64 x)) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))) |
(+.f64 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(-.f64 (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))))) |
(+.f64 (-.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 1/120 (pow.f64 eps 5))))) |
(-.f64 (*.f64 (cos.f64 x) (+.f64 (+.f64 eps (*.f64 1/120 (pow.f64 eps 5))) (*.f64 -1/6 (pow.f64 eps 3)))) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (+.f64 (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 1/120 (pow.f64 eps 5)))) (sin.f64 x)) |
Compiled 15906 to 6288 computations (60.5% saved)
75 alts after pruning (69 fresh and 6 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 707 | 53 | 760 |
| Fresh | 32 | 16 | 48 |
| Picked | 0 | 1 | 1 |
| Done | 2 | 5 | 7 |
| Total | 741 | 75 | 816 |
| Status | Error | Program |
|---|---|---|
| 35.5b | (exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 2)) | |
| 42.3b | (-.f64 (sin.f64 eps) x) | |
| ✓ | 30.2b | (*.f64 (cos.f64 x) eps) |
| 32.7b | (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) | |
| 30.6b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) | |
| 1.6b | (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 3) | |
| 30.5b | (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) 2) | |
| 31.8b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) | |
| 60.2b | (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) | |
| 40.7b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) | |
| 35.6b | (exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 1/3)) | |
| 31.7b | (sin.f64 eps) | |
| 43.9b | (pow.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3) 1/3) | |
| 38.6b | (+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 0.4b | (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) | |
| 34.5b | (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) | |
| 25.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (-.f64 x x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| ▶ | 48.4b | (+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
| 40.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) | |
| 52.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) (sin.f64 x))) | |
| 33.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x x) 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x x) 1/2)) (sin.f64 (*.f64 eps 1/2))))) 2) | |
| 59.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) | |
| 35.4b | (exp.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 30.4b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) | |
| 18.7b | (fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) | |
| ▶ | 0.3b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x))) |
| ✓ | 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 40.2b | (log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) | |
| 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (log1p.f64 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))) | |
| 0.5b | (log1p.f64 (expm1.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 52.4b | (-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) | |
| 45.7b | (-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) | |
| 22.0b | (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3) (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (-.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2) (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))) | |
| 16.6b | (fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) | |
| 43.4b | (cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) | |
| 31.1b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))) | |
| 2.2b | (fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 1)) | |
| 33.9b | (fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) | |
| 30.9b | (log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))) | |
| 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x)))) | |
| ▶ | 45.7b | (log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
| 45.7b | (+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) | |
| 1.7b | (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| ▶ | 24.3b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 46.5b | eps | |
| 52.7b | (sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) | |
| ✓ | 40.1b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 0.4b | (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) | |
| ▶ | 15.6b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
| 40.8b | (-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) | |
| 30.5b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) | |
| 41.2b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) | |
| 15.6b | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 59.8b | (neg.f64 (sin.f64 x)) | |
| 24.2b | (-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) | |
| ✓ | 24.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 30.6b | (log.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 62.3b | (*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) | |
| 52.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| ✓ | 61.2b | (-.f64 x x) |
| 28.1b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3)) (sin.f64 x))) | |
| 46.9b | (pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) | |
| 40.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) | |
| 0.4b | (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) | |
| 31.0b | (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) | |
| 52.8b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 x)) 2) | |
| ✓ | 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 40.6b | (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) | |
| 30.6b | (*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) | |
| 0.5b | (fma.f64 (sin.f64 eps) (cos.f64 x) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 3)) | |
| 48.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) | |
| 30.4b | (*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
Compiled 2338 to 1640 computations (29.9% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x))) |
| ✓ | 0.2b | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| ✓ | 0.2b | (-.f64 -1 (cos.f64 eps)) |
| ✓ | 0.3b | (pow.f64 (sin.f64 eps) 2) |
Compiled 60 to 30 computations (50% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 32.0ms | x | @ | -inf | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| 2.0ms | x | @ | inf | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| 2.0ms | eps | @ | inf | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| 2.0ms | eps | @ | 0 | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| 2.0ms | eps | @ | -inf | (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
| 1× | batch-egg-rewrite |
| 678× | log-prod_binary64 |
| 450× | prod-diff_binary64 |
| 373× | pow2_binary64 |
| 261× | pow1/3_binary64 |
| 256× | expm1-udef_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 58 |
| 1 | 294 | 42 |
| 2 | 3723 | 42 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 (sin.f64 eps) 2) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (pow.f64 (cos.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (neg.f64 (cos.f64 eps)) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 eps) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 eps) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 eps) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 eps) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1 (pow.f64 (cos.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 eps) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 eps) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 eps) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 eps) 4)) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (cbrt.f64 (pow.f64 (sin.f64 eps) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (*.f64 (cbrt.f64 (sin.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 eps)) (*.f64 (sqrt.f64 (sin.f64 eps)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 eps)) 3) (sqrt.f64 (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 eps) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 eps eps)) (cos.f64 (+.f64 eps eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (pow.f64 (cos.f64 eps) 2) 3)) (+.f64 1 (+.f64 (pow.f64 (pow.f64 (cos.f64 eps) 2) 2) (pow.f64 (cos.f64 eps) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (pow.f64 (cos.f64 eps) 2) 2)) (+.f64 1 (pow.f64 (cos.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 eps) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 eps) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 eps) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 eps))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (neg.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (*.f64 (neg.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 -1 (cos.f64 eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 -1 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 -1 (cos.f64 eps))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 -1 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 1 (+.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2) (cbrt.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (sqrt.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (fma.f64 (cos.f64 eps) (+.f64 -1 (cos.f64 eps)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 eps) (+.f64 -1 (cos.f64 eps)) 1) (-.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 -1 (cos.f64 eps)) (pow.f64 (sin.f64 eps) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (neg.f64 (+.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 -1 (pow.f64 (cos.f64 eps) 3)) (fma.f64 (cos.f64 eps) (+.f64 -1 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (fma.f64 (cos.f64 eps) (+.f64 -1 (cos.f64 eps)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (neg.f64 (cos.f64 eps)) 3)) (+.f64 1 (-.f64 (pow.f64 (neg.f64 (cos.f64 eps)) 2) (*.f64 -1 (neg.f64 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (neg.f64 (cos.f64 eps)) 2)) (-.f64 -1 (neg.f64 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 -1 (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 -1 (cos.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 eps) (+.f64 -1 (cos.f64 eps)) 1) (-.f64 -1 (pow.f64 (cos.f64 eps) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 -1 (cos.f64 eps)) (pow.f64 (sin.f64 eps) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 -1 (cos.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 -1 (cos.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 -1 (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 (cos.f64 eps) -1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 -1 (cos.f64 eps)) (/.f64 1 (pow.f64 (sin.f64 eps) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 1 (+.f64 -1 (cos.f64 eps))) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (neg.f64 (cbrt.f64 (cos.f64 eps))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (neg.f64 (sqrt.f64 (cos.f64 eps))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 eps))) 2) (cbrt.f64 (neg.f64 (cos.f64 eps))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 1 (+.f64 -1 (cos.f64 eps)))) 2) (cbrt.f64 (/.f64 1 (+.f64 -1 (cos.f64 eps)))) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 eps))) (sqrt.f64 (neg.f64 (cos.f64 eps))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 1 (+.f64 -1 (cos.f64 eps)))) (sqrt.f64 (/.f64 1 (+.f64 -1 (cos.f64 eps)))) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sin.f64 eps)) (/.f64 (-.f64 -1 (cos.f64 eps)) (sin.f64 eps)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2) (sin.f64 eps)) (/.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) (sin.f64 eps)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (sin.f64 eps)) (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (sin.f64 eps)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2) 1) (/.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) (pow.f64 (sin.f64 eps) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) 1) (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (pow.f64 (sin.f64 eps) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (sin.f64 eps) 4))) (/.f64 (-.f64 -1 (cos.f64 eps)) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2) (cbrt.f64 (pow.f64 (sin.f64 eps) 4))) (/.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (cbrt.f64 (pow.f64 (sin.f64 eps) 4))) (/.f64 (sqrt.f64 (-.f64 -1 (cos.f64 eps))) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (neg.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 -1 (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (-.f64 -1 (cos.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 x) (/.f64 1 (+.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 -1 (cos.f64 eps)) (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x)) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x))) (neg.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x)) 1) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x)) (pow.f64 (cbrt.f64 (-.f64 -1 (cos.f64 eps))) 2)) (cbrt.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x)) (sqrt.f64 (-.f64 -1 (cos.f64 eps)))) (sqrt.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (sin.f64 eps) 2)) (sin.f64 x)) (neg.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (neg.f64 (pow.f64 (sin.f64 eps) 2))) (neg.f64 (-.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (+.f64 -1 (cos.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 -1 (cos.f64 eps)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 -1 (cos.f64 eps)) (*.f64 (pow.f64 (sin.f64 eps) 2) (sin.f64 x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 -1 (cos.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 -1 (cos.f64 eps)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 1) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3) (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (-.f64 (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 2) (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (pow.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)) 2)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))) (exp.f64 (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) (exp.f64 (*.f64 (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 eps) (cos.f64 x))) (+.f64 1 (expm1.f64 (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x)))) 1)))))) |
| 1× | egg-herbie |
| 591× | fma-def_binary64 |
| 417× | associate-*r*_binary64 |
| 417× | distribute-rgt-out_binary64 |
| 398× | associate-*l*_binary64 |
| 331× | distribute-rgt-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 137 | 1623 |
| 1 | 404 | 1569 |
| 2 | 1146 | 1497 |
| 3 | 4812 | 1440 |
| 1× | node limit |
| Inputs |
|---|
(pow.f64 eps 2) |
(+.f64 (pow.f64 eps 2) (*.f64 -1/3 (pow.f64 eps 4))) |
(+.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/3 (pow.f64 eps 4)) (*.f64 2/45 (pow.f64 eps 6)))) |
(+.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/315 (pow.f64 eps 8)) (+.f64 (*.f64 -1/3 (pow.f64 eps 4)) (*.f64 2/45 (pow.f64 eps 6))))) |
-2 |
(-.f64 (*.f64 1/2 (pow.f64 eps 2)) 2) |
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (*.f64 -1/24 (pow.f64 eps 4))) 2) |
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6)))) 2) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))) (pow.f64 eps 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))) (pow.f64 eps 6))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/630 (sin.f64 x)) (+.f64 (*.f64 1/48 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))) (+.f64 (*.f64 -1/4 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))))) (*.f64 -1/2880 (sin.f64 x))))) (pow.f64 eps 8))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1)))) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/120 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 5)) (+.f64 (cos.f64 eps) 1))))) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 1/5040 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 7)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/120 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 5)) (+.f64 (cos.f64 eps) 1)))))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (sin.f64 eps)) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 1 (cos.f64 eps)))) (sin.f64 eps)))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
| Outputs |
|---|
(pow.f64 eps 2) |
(*.f64 eps eps) |
(+.f64 (pow.f64 eps 2) (*.f64 -1/3 (pow.f64 eps 4))) |
(+.f64 (*.f64 eps eps) (*.f64 -1/3 (pow.f64 eps 4))) |
(fma.f64 eps eps (*.f64 -1/3 (pow.f64 eps 4))) |
(fma.f64 -1/3 (pow.f64 eps 4) (*.f64 eps eps)) |
(+.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/3 (pow.f64 eps 4)) (*.f64 2/45 (pow.f64 eps 6)))) |
(+.f64 (*.f64 eps eps) (fma.f64 -1/3 (pow.f64 eps 4) (*.f64 2/45 (pow.f64 eps 6)))) |
(fma.f64 eps eps (fma.f64 -1/3 (pow.f64 eps 4) (*.f64 2/45 (pow.f64 eps 6)))) |
(fma.f64 -1/3 (pow.f64 eps 4) (fma.f64 2/45 (pow.f64 eps 6) (*.f64 eps eps))) |
(fma.f64 -1/3 (pow.f64 eps 4) (fma.f64 eps eps (*.f64 2/45 (pow.f64 eps 6)))) |
(+.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/315 (pow.f64 eps 8)) (+.f64 (*.f64 -1/3 (pow.f64 eps 4)) (*.f64 2/45 (pow.f64 eps 6))))) |
(+.f64 (*.f64 eps eps) (fma.f64 -1/315 (pow.f64 eps 8) (fma.f64 -1/3 (pow.f64 eps 4) (*.f64 2/45 (pow.f64 eps 6))))) |
(fma.f64 eps eps (fma.f64 -1/315 (pow.f64 eps 8) (fma.f64 -1/3 (pow.f64 eps 4) (*.f64 2/45 (pow.f64 eps 6))))) |
(fma.f64 eps eps (fma.f64 2/45 (pow.f64 eps 6) (fma.f64 -1/3 (pow.f64 eps 4) (*.f64 -1/315 (pow.f64 eps 8))))) |
-2 |
(-.f64 (*.f64 1/2 (pow.f64 eps 2)) 2) |
(fma.f64 1/2 (*.f64 eps eps) -2) |
(fma.f64 (*.f64 eps eps) 1/2 -2) |
(fma.f64 eps (*.f64 eps 1/2) -2) |
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (*.f64 -1/24 (pow.f64 eps 4))) 2) |
(+.f64 (fma.f64 1/2 (*.f64 eps eps) (*.f64 (pow.f64 eps 4) -1/24)) -2) |
(fma.f64 (*.f64 eps eps) 1/2 (fma.f64 (pow.f64 eps 4) -1/24 -2)) |
(fma.f64 eps (*.f64 eps 1/2) (fma.f64 (pow.f64 eps 4) -1/24 -2)) |
(-.f64 (+.f64 (*.f64 1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/24 (pow.f64 eps 4)) (*.f64 1/720 (pow.f64 eps 6)))) 2) |
(+.f64 (fma.f64 1/2 (*.f64 eps eps) (fma.f64 -1/24 (pow.f64 eps 4) (*.f64 (pow.f64 eps 6) 1/720))) -2) |
(+.f64 (fma.f64 (pow.f64 eps 4) -1/24 (*.f64 (pow.f64 eps 6) 1/720)) (fma.f64 (*.f64 eps eps) 1/2 -2)) |
(fma.f64 eps (*.f64 eps 1/2) (fma.f64 (pow.f64 eps 4) -1/24 (fma.f64 (pow.f64 eps 6) 1/720 -2))) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1 (+.f64 (cos.f64 eps) 1)) |
(neg.f64 (+.f64 (cos.f64 eps) 1)) |
(fma.f64 -1 (cos.f64 eps) -1) |
(-.f64 -1 (cos.f64 eps)) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) |
(*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)) |
(*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) |
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (neg.f64 (*.f64 (pow.f64 eps 4) (*.f64 (sin.f64 x) -1/24)))) |
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (pow.f64 eps 4) (*.f64 -1/24 (sin.f64 x)))) |
(*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))) (pow.f64 eps 6))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 -1 (*.f64 (pow.f64 eps 6) (-.f64 (*.f64 (sin.f64 x) 1/45) (fma.f64 1/96 (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) -1/24) -1/4)))) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (neg.f64 (*.f64 (pow.f64 eps 4) (*.f64 (sin.f64 x) -1/24))))) |
(-.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (pow.f64 eps 4) (*.f64 -1/24 (sin.f64 x)))) (*.f64 (pow.f64 eps 6) (-.f64 (*.f64 (sin.f64 x) 17/1440) (*.f64 (sin.f64 x) 1/96)))) |
(-.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24))) (*.f64 (pow.f64 eps 6) (*.f64 (sin.f64 x) 1/720))) |
(fma.f64 (pow.f64 eps 6) (*.f64 (sin.f64 x) -1/720) (*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24)))) |
(+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))) (pow.f64 eps 6))) (+.f64 (*.f64 -1 (*.f64 (-.f64 (*.f64 -1/630 (sin.f64 x)) (+.f64 (*.f64 1/48 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))) (+.f64 (*.f64 -1/4 (-.f64 (*.f64 1/45 (sin.f64 x)) (+.f64 (*.f64 1/96 (sin.f64 x)) (*.f64 -1/4 (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))))) (*.f64 -1/2880 (sin.f64 x))))) (pow.f64 eps 8))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x))))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 -1 (*.f64 (pow.f64 eps 6) (-.f64 (*.f64 (sin.f64 x) 1/45) (fma.f64 1/96 (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) -1/24) -1/4)))) (fma.f64 -1 (*.f64 (pow.f64 eps 8) (-.f64 (*.f64 (sin.f64 x) -1/630) (fma.f64 1/48 (*.f64 (sin.f64 x) -1/24) (fma.f64 -1/4 (-.f64 (*.f64 (sin.f64 x) 1/45) (fma.f64 1/96 (sin.f64 x) (*.f64 (*.f64 (sin.f64 x) -1/24) -1/4))) (*.f64 (sin.f64 x) -1/2880))))) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (neg.f64 (*.f64 (pow.f64 eps 4) (*.f64 (sin.f64 x) -1/24)))))) |
(-.f64 (-.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (pow.f64 eps 4) (*.f64 -1/24 (sin.f64 x)))) (*.f64 (pow.f64 eps 8) (-.f64 (*.f64 (sin.f64 x) -1/630) (+.f64 (*.f64 (sin.f64 x) -1/1152) (fma.f64 -1/4 (-.f64 (*.f64 (sin.f64 x) 17/1440) (*.f64 (sin.f64 x) 1/96)) (*.f64 (sin.f64 x) -1/2880)))))) (*.f64 (pow.f64 eps 6) (-.f64 (*.f64 (sin.f64 x) 17/1440) (*.f64 (sin.f64 x) 1/96)))) |
(-.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24))) (fma.f64 (pow.f64 eps 6) (*.f64 (sin.f64 x) 1/720) (*.f64 (pow.f64 eps 8) (-.f64 (*.f64 (sin.f64 x) -1/630) (fma.f64 -1/4 (*.f64 (sin.f64 x) 1/720) (*.f64 (sin.f64 x) -7/5760)))))) |
(fma.f64 (pow.f64 eps 8) (+.f64 (fma.f64 -1/4 (*.f64 (sin.f64 x) 1/720) (*.f64 (sin.f64 x) -1/2880)) (*.f64 (sin.f64 x) 29/40320)) (fma.f64 (pow.f64 eps 6) (*.f64 (sin.f64 x) -1/720) (*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24))))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps)))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x))) |
(/.f64 (neg.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (neg.f64 x)) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1)))) |
(fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (neg.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)))) |
(-.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 3))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(-.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)))) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(-.f64 (*.f64 (/.f64 1/6 (+.f64 (cos.f64 eps) 1)) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/120 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 5)) (+.f64 (cos.f64 eps) 1))))) |
(fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (*.f64 -1/120 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 5)))))) |
(fma.f64 1/6 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 3)) (-.f64 (*.f64 -1/120 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 5))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (fma.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/120 (*.f64 (pow.f64 x 5) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))))) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(-.f64 (fma.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (/.f64 -1/120 (/.f64 (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)) (pow.f64 x 5)))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 1/5040 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 7)) (+.f64 (cos.f64 eps) 1))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 (cos.f64 eps) 1))) (*.f64 -1/120 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 5)) (+.f64 (cos.f64 eps) 1)))))) |
(fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (fma.f64 1/5040 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 7))) (fma.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (*.f64 -1/120 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 5))))))) |
(fma.f64 1/6 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 3)) (fma.f64 1/5040 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 7)) (-.f64 (*.f64 -1/120 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 5))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))))) |
(fma.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (fma.f64 -1/120 (*.f64 (pow.f64 x 5) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (-.f64 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (*.f64 1/5040 (pow.f64 x 7))) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))))) |
(fma.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (fma.f64 -1/120 (*.f64 (/.f64 (pow.f64 x 5) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2)) (-.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) 1/5040) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 7))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(/.f64 (neg.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2))) (+.f64 (cos.f64 eps) 1)) |
(*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (neg.f64 (pow.f64 (sin.f64 eps) 2))) |
(*.f64 (pow.f64 (sin.f64 eps) 2) (neg.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))) |
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 -1 (*.f64 (pow.f64 eps 4) (-.f64 (*.f64 -1/6 (sin.f64 x)) (*.f64 -1/8 (sin.f64 x)))))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (neg.f64 (*.f64 (pow.f64 eps 4) (*.f64 (sin.f64 x) -1/24)))))) |
(+.f64 (-.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (pow.f64 eps 4) (*.f64 -1/24 (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (-.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 (pow.f64 eps 4) -1/24)))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (sin.f64 eps)) |
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (sin.f64 eps)) |
(-.f64 (sin.f64 eps) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(-.f64 (sin.f64 eps) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))) |
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps))) |
(-.f64 (fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 eps))) (sin.f64 eps)) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(*.f64 (sin.f64 eps) (-.f64 (fma.f64 -1/2 (*.f64 x x) 1) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) x) (+.f64 1 (cos.f64 eps)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (/.f64 (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3)) (+.f64 1 (cos.f64 eps)))) (sin.f64 eps)))) |
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (/.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (sin.f64 eps)))) |
(-.f64 (fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 eps))) (fma.f64 1/6 (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (pow.f64 x 3)) (sin.f64 eps))) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2)))) |
(-.f64 (fma.f64 1/6 (*.f64 (pow.f64 x 3) (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) (/.f64 (*.f64 x (pow.f64 (sin.f64 eps) 2)) (+.f64 (cos.f64 eps) 1))) |
(+.f64 (*.f64 (/.f64 1/6 (+.f64 (cos.f64 eps) 1)) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 x 3))) (*.f64 (sin.f64 eps) (-.f64 (fma.f64 -1/2 (*.f64 x x) 1) (/.f64 x (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps)))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (pow.f64 (sin.f64 eps) 2))))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)) (pow.f64 (sin.f64 eps) 2))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 (sin.f64 x) (+.f64 (cos.f64 eps) 1)))) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
| ✓ | 0.0b | (*.f64 x (+.f64 eps x)) |
| ✓ | 4.3b | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
Compiled 40 to 14 computations (65% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | x | @ | inf | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
| 1.0ms | x | @ | -inf | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
| 1.0ms | eps | @ | 0 | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
| 1.0ms | eps | @ | inf | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
| 1.0ms | eps | @ | -inf | (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
| 1× | batch-egg-rewrite |
| 559× | log-prod_binary64 |
| 489× | fma-def_binary64 |
| 423× | pow-prod-down_binary64 |
| 277× | pow2_binary64 |
| 226× | pow-unpow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 36 |
| 1 | 206 | 34 |
| 2 | 3069 | 34 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x)))) |
(*.f64 x (+.f64 eps x)) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps x) (*.f64 eps -1/2)) (*.f64 (*.f64 x x) (*.f64 eps -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps -1/2) (*.f64 eps x)) (*.f64 (*.f64 eps -1/2) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps x) (*.f64 eps -1/2) (*.f64 (*.f64 x x) (*.f64 eps -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps -1/2) (*.f64 eps x) (*.f64 (*.f64 eps -1/2) (*.f64 x x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 eps x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (+.f64 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps x) 1) (*.f64 (*.f64 x x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 eps x))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (+.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (+.f64 eps x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (+.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (+.f64 eps x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 eps x) 3) (pow.f64 x 6)) (+.f64 (pow.f64 (*.f64 eps x) 2) (-.f64 (pow.f64 x 4) (*.f64 (*.f64 eps x) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 eps x) 2) (pow.f64 x 4)) (-.f64 (*.f64 eps x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 eps 3) (pow.f64 x 3)) x) (fma.f64 x (-.f64 x eps) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 eps eps) (*.f64 x x)) x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (pow.f64 eps 3) (pow.f64 x 3))) (fma.f64 x (-.f64 x eps) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 eps eps) (*.f64 x x))) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (+.f64 eps x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (+.f64 eps x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (+.f64 eps x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (+.f64 eps x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (+.f64 eps x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (+.f64 eps x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (+.f64 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (+.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 x x)) (exp.f64 (*.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (+.f64 eps x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (+.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (+.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (+.f64 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (+.f64 eps x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 x (+.f64 eps x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (+.f64 eps x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 x (+.f64 eps x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps x (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x eps (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 eps x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) x) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) eps) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (pow.f64 x 3/2) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) eps) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps x) 1 (*.f64 (*.f64 x x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3/2) (sqrt.f64 x) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (cbrt.f64 (*.f64 x x)) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 eps x)) 2) (cbrt.f64 (*.f64 eps x)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 eps x)) (sqrt.f64 (*.f64 eps x)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 5) (cbrt.f64 x) (*.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (sqrt.f64 x)) (sqrt.f64 x) (*.f64 x x)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 eps eps) (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) (/.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2) (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps (+.f64 1 (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps (fma.f64 -1/2 (*.f64 x (+.f64 eps x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) (pow.f64 (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) 2) (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) (sqrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3)) (/.f64 1 (fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)) (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2)) (/.f64 1 (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (*.f64 x (+.f64 eps x)) 1) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)) (*.f64 eps eps)) (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3)) (fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3)) (+.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2) (-.f64 (*.f64 eps eps) (*.f64 (*.f64 eps eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2)) (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3))) (neg.f64 (fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)) (*.f64 eps eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2))) (neg.f64 (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2) (*.f64 eps eps)) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (neg.f64 eps)) (*.f64 eps eps)) (+.f64 (pow.f64 eps 3) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 eps) (fma.f64 -1/2 (*.f64 x (+.f64 eps x)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 eps)) (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 eps) (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 eps)) (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) (exp.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (+.f64 1 (expm1.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))) (+.f64 1 (expm1.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (*.f64 (*.f64 x (+.f64 eps x)) eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (+.f64 eps x)) (*.f64 eps -1/2) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)) eps eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) 1 eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) (pow.f64 (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 2) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) 2) (cbrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)) 2)) (*.f64 (cbrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) (sqrt.f64 (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (*.f64 eps (*.f64 x (*.f64 (+.f64 eps x) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2))) (*.f64 (sqrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 x) (*.f64 (+.f64 eps x) eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps -1/2) (*.f64 x (+.f64 eps x)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (*.f64 -1/2 x)) (+.f64 eps x) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (*.f64 x (+.f64 eps x))) -1/2 eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (cbrt.f64 (pow.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)) 2))) (cbrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (sqrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)))) (sqrt.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x (*.f64 (+.f64 eps x) -1/2)) (sqrt.f64 eps)) (sqrt.f64 eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps -1/2) x) (+.f64 eps x) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps -1/2) (+.f64 eps x)) x eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps -1/2) 1) (*.f64 x (+.f64 eps x)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps -1/2) (pow.f64 (cbrt.f64 (*.f64 x (+.f64 eps x))) 2)) (cbrt.f64 (*.f64 x (+.f64 eps x))) eps)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 eps -1/2) (sqrt.f64 (*.f64 x (+.f64 eps x)))) (sqrt.f64 (*.f64 x (+.f64 eps x))) eps))))) |
| 1× | egg-herbie |
| 791× | fma-neg_binary64 |
| 491× | associate-*l*_binary64 |
| 436× | distribute-rgt-out--_binary64 |
| 400× | unsub-neg_binary64 |
| 373× | cancel-sign-sub-inv_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 1018 |
| 1 | 82 | 913 |
| 2 | 183 | 743 |
| 3 | 564 | 743 |
| 4 | 2570 | 743 |
| 5 | 6675 | 743 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(pow.f64 x 2) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(pow.f64 x 2) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(pow.f64 x 2) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
eps |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
| Outputs |
|---|
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(*.f64 -1/2 (*.f64 eps (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 -1/2 (*.f64 x x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(*.f64 -1/2 (*.f64 x (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps x))) |
(*.f64 x (*.f64 -1/2 (*.f64 eps eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(*.f64 -1/2 (*.f64 x (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps x))) |
(*.f64 x (*.f64 -1/2 (*.f64 eps eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(*.f64 -1/2 (*.f64 x (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps x))) |
(*.f64 x (*.f64 -1/2 (*.f64 eps eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(*.f64 -1/2 (*.f64 eps (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 -1/2 (*.f64 x x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(*.f64 -1/2 (*.f64 eps (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 -1/2 (*.f64 x x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(pow.f64 x 2) |
(*.f64 x x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(pow.f64 x 2) |
(*.f64 x x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(pow.f64 x 2) |
(*.f64 x x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(*.f64 eps x) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(+.f64 (*.f64 eps x) (pow.f64 x 2)) |
(fma.f64 eps x (*.f64 x x)) |
(*.f64 x (+.f64 eps x)) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) |
(*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps) |
(fma.f64 (*.f64 x x) (*.f64 -1/2 eps) eps) |
(*.f64 eps (fma.f64 -1/2 (*.f64 x x) 1)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(*.f64 -1/2 (*.f64 x (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps x))) |
(*.f64 x (*.f64 -1/2 (*.f64 eps eps))) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) |
(*.f64 -1/2 (*.f64 x (*.f64 eps eps))) |
(*.f64 -1/2 (*.f64 eps (*.f64 eps x))) |
(*.f64 x (*.f64 -1/2 (*.f64 eps eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1)))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
eps |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) eps) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(*.f64 -1/2 (*.f64 eps (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 -1/2 (*.f64 x x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) |
(*.f64 -1/2 (*.f64 eps (*.f64 x x))) |
(*.f64 (*.f64 x x) (*.f64 -1/2 eps)) |
(*.f64 eps (*.f64 -1/2 (*.f64 x x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))) |
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))) |
(*.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x))) |
(*.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))) |
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))) |
(fma.f64 -1/2 (*.f64 (*.f64 eps x) (+.f64 eps x)) eps) |
(fma.f64 x (*.f64 (*.f64 -1/2 eps) (+.f64 eps x)) eps) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (sin.f64 (*.f64 1/2 eps)) |
| ✓ | 0.2b | (*.f64 1/2 (+.f64 eps (*.f64 2 x))) |
| ✓ | 0.2b | (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
| ✓ | 3.0b | (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
Compiled 64 to 47 computations (26.6% saved)
21 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | eps | @ | -inf | (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
| 1.0ms | eps | @ | 0 | (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
| 1.0ms | x | @ | 0 | (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
| 1.0ms | x | @ | 0 | (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
| 1.0ms | eps | @ | 0 | (sin.f64 (*.f64 1/2 eps)) |
| 1× | batch-egg-rewrite |
| 623× | log-prod_binary64 |
| 509× | fma-def_binary64 |
| 336× | pow2_binary64 |
| 262× | fma-neg_binary64 |
| 234× | pow1/3_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 48 |
| 1 | 260 | 33 |
| 2 | 3508 | 33 |
| 1× | node limit |
| Inputs |
|---|
(cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) |
(*.f64 1/2 (+.f64 eps (*.f64 2 x))) |
(sin.f64 (*.f64 1/2 eps)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 eps x)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 eps x)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (fma.f64 1/2 eps x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (fma.f64 1/2 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (fma.f64 1/2 eps x))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (fma.f64 1/2 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 x) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (fma.f64 1/2 eps x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (fma.f64 1/2 eps x))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2) (cbrt.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))) (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (fma.f64 1/2 eps x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (*.f64 1/2 eps)) (cos.f64 x) (neg.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (cos.f64 (fma.f64 1/2 eps x)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (cos.f64 (fma.f64 1/2 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (cos.f64 (fma.f64 1/2 eps x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (cos.f64 (fma.f64 1/2 eps x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 (*.f64 1/2 eps) (fma.f64 1/2 eps x))) (sin.f64 (+.f64 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 (*.f64 1/2 eps) (fma.f64 1/2 eps x))) (sin.f64 (+.f64 eps x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 (*.f64 1/2 eps) (fma.f64 1/2 eps x))) (sin.f64 (+.f64 eps x)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (sin.f64 (-.f64 (*.f64 1/2 eps) (fma.f64 1/2 eps x))) (sin.f64 (+.f64 eps x)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))) (cos.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (cos.f64 (fma.f64 1/2 eps x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 1/2 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 eps x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 1/2 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 eps x)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 1/2 eps x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 1/2 eps x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 1/2 eps) 3) (pow.f64 x 3)) (fma.f64 1/4 (*.f64 eps eps) (-.f64 (*.f64 x x) (*.f64 (*.f64 1/2 eps) x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1/4 (*.f64 eps eps)) (*.f64 x x)) (-.f64 (*.f64 1/2 eps) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 x 3) 8 (pow.f64 eps 3)) 1/2) (fma.f64 (+.f64 x x) (-.f64 (+.f64 x x) eps) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 4)) 1/2) (+.f64 eps (*.f64 -2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (fma.f64 (pow.f64 x 3) 8 (pow.f64 eps 3))) (fma.f64 (+.f64 x x) (-.f64 (+.f64 x x) eps) (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 4))) (+.f64 eps (*.f64 -2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 1/2 eps x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/2 eps x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 1/2 eps x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 1/2 eps x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 1/2 eps x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 1/2 eps x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 1/2 eps x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (sqrt.f64 (exp.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (sqrt.f64 (exp.f64 eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/2 eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 1/2 eps x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 1/2 eps x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 1/2 eps x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 eps x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (+.f64 x x) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1/2 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 2 (*.f64 x 1/2) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x x) 1/2 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 eps) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/2 eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (pow.f64 (cbrt.f64 x) 2) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 x) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x x)) 2) (*.f64 (cbrt.f64 (+.f64 x x)) 1/2) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (*.f64 (cbrt.f64 eps) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/2 eps)) (pow.f64 (cbrt.f64 (*.f64 1/2 eps)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 eps)) 2) (cbrt.f64 (*.f64 1/2 eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x x)) (*.f64 (sqrt.f64 (+.f64 x x)) 1/2) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (*.f64 (sqrt.f64 eps) 1/2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/2 eps)) (sqrt.f64 (*.f64 1/2 eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 x) 2 (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 (+.f64 x x)) 2)) (cbrt.f64 (+.f64 x x)) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 (+.f64 x x))) (sqrt.f64 (+.f64 x x)) (*.f64 1/2 eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (pow.f64 (cbrt.f64 eps) 2)) (cbrt.f64 eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/2 (sqrt.f64 eps)) (sqrt.f64 eps) x))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) (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 pow.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x 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)))))) |
| 1× | egg-herbie |
| 731× | fma-def_binary64 |
| 526× | neg-sub0_binary64 |
| 484× | neg-mul-1_binary64 |
| 387× | associate-*l*_binary64 |
| 379× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 105 | 908 |
| 1 | 303 | 834 |
| 2 | 844 | 778 |
| 3 | 3302 | 719 |
| 4 | 7305 | 709 |
| 1× | node limit |
| Inputs |
|---|
(cos.f64 x) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (cos.f64 x))) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 eps)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (cos.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(*.f64 1/2 (*.f64 eps (cos.f64 x))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))) (*.f64 1/48 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(+.f64 (*.f64 1/2 eps) x) |
(*.f64 1/2 eps) |
(+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)) |
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))) |
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (+.f64 (*.f64 -1/645120 (pow.f64 eps 7)) (*.f64 1/2 eps)))) |
| Outputs |
|---|
(cos.f64 x) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (cos.f64 x)) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (cos.f64 x))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (fma.f64 -1/8 (*.f64 eps eps) 1))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (fma.f64 (*.f64 eps -1/8) eps 1))) |
(+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (+.f64 (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (cos.f64 x)) (*.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 3))))) |
(fma.f64 -1/2 (*.f64 eps (sin.f64 x)) (fma.f64 -1/8 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (cos.f64 x)))) |
(fma.f64 (fma.f64 -1/8 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/48 (pow.f64 eps 3)) (*.f64 -1/2 eps)))) |
(fma.f64 (fma.f64 (*.f64 eps -1/8) eps 1) (cos.f64 x) (*.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 (*.f64 eps eps) 1/48) -1/2))) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 eps)) |
(cos.f64 (*.f64 eps 1/2)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (cos.f64 (*.f64 1/2 eps))) |
(fma.f64 -1 (*.f64 x (sin.f64 (*.f64 eps 1/2))) (cos.f64 (*.f64 eps 1/2))) |
(-.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x (sin.f64 (*.f64 eps 1/2)))) |
(fma.f64 x (sin.f64 (*.f64 -1/2 eps)) (cos.f64 (*.f64 eps 1/2))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (cos.f64 (*.f64 1/2 eps)))) |
(fma.f64 -1 (*.f64 x (sin.f64 (*.f64 eps 1/2))) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x)) (cos.f64 (*.f64 eps 1/2)))) |
(-.f64 (fma.f64 -1/2 (*.f64 x (*.f64 x (cos.f64 (*.f64 eps 1/2)))) (cos.f64 (*.f64 eps 1/2))) (*.f64 x (sin.f64 (*.f64 eps 1/2)))) |
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (cos.f64 (*.f64 eps 1/2))) (*.f64 x (sin.f64 (*.f64 eps 1/2)))) |
(-.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 x (sin.f64 (*.f64 eps 1/2)))) |
(fma.f64 x (sin.f64 (*.f64 -1/2 eps)) (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2)))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))))) |
(fma.f64 -1 (*.f64 x (sin.f64 (*.f64 eps 1/2))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 1/6 (*.f64 (sin.f64 (*.f64 eps 1/2)) (pow.f64 x 3))))) |
(-.f64 (fma.f64 -1/2 (*.f64 x (*.f64 x (cos.f64 (*.f64 eps 1/2)))) (fma.f64 1/6 (*.f64 (sin.f64 (*.f64 eps 1/2)) (pow.f64 x 3)) (cos.f64 (*.f64 eps 1/2)))) (*.f64 x (sin.f64 (*.f64 eps 1/2)))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) |
(+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(fma.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) |
(cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) |
(cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) |
(cos.f64 (fma.f64 eps 1/2 x)) |
(*.f64 1/2 (*.f64 eps (cos.f64 x))) |
(*.f64 1/2 (*.f64 (cos.f64 x) eps)) |
(*.f64 (cos.f64 x) (*.f64 eps 1/2)) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (*.f64 1/2 (*.f64 eps (cos.f64 x)))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 (cos.f64 x) eps))) |
(fma.f64 1/2 (*.f64 (cos.f64 x) eps) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) -1/4))) |
(fma.f64 (cos.f64 x) (*.f64 eps 1/2) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) -1/4))) |
(*.f64 eps (+.f64 (*.f64 (cos.f64 x) 1/2) (*.f64 (sin.f64 x) (*.f64 eps -1/4)))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (cos.f64 x) eps) (*.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/12)))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/12) (*.f64 1/2 (*.f64 (cos.f64 x) eps)))) |
(fma.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) -1/4) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/12) (*.f64 eps 1/2)))) |
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) |
(+.f64 (*.f64 -1/4 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (cos.f64 x)) (*.f64 -1/48 (cos.f64 x)))) (*.f64 1/48 (*.f64 (pow.f64 eps 4) (sin.f64 x)))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (cos.f64 x) eps) (fma.f64 (pow.f64 eps 3) (*.f64 (cos.f64 x) -1/12) (*.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 4)))))) |
(fma.f64 -1/4 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 (cos.f64 x) eps) (fma.f64 1/48 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (*.f64 (cos.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))))) |
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/12) (*.f64 eps 1/2))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/48 (pow.f64 eps 4)) (*.f64 (*.f64 eps eps) -1/4)))) |
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 eps 1/2) (*.f64 (pow.f64 eps 3) -1/12))) (*.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) -1/4) (*.f64 1/48 (pow.f64 eps 4))))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)))) |
(-.f64 (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x (sin.f64 (*.f64 eps 1/2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (fma.f64 x (sin.f64 (*.f64 -1/2 eps)) (cos.f64 (*.f64 eps 1/2)))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))))) |
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x x) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(-.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (cos.f64 (*.f64 eps 1/2)))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (-.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 x (sin.f64 (*.f64 eps 1/2))))) |
(*.f64 (sin.f64 (*.f64 eps 1/2)) (fma.f64 x (sin.f64 (*.f64 -1/2 eps)) (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2))))) |
(+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) x)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 3))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps)))))) |
(fma.f64 -1 (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 1/6 (*.f64 (pow.f64 x 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 x x))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2)))))) |
(-.f64 (fma.f64 1/6 (*.f64 (pow.f64 x 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 eps 1/2)) (*.f64 (*.f64 x x) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 eps 1/2))))) (*.f64 x (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))) |
(+.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (cos.f64 (*.f64 eps 1/2)))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) |
(fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (+.f64 1 (*.f64 (*.f64 -1/2 x) x)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 2 x (neg.f64 (neg.f64 eps))))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (*.f64 1/2 (fma.f64 x 2 eps))) (sin.f64 (*.f64 eps 1/2))) |
(*.f64 (cos.f64 (fma.f64 eps 1/2 x)) (sin.f64 (*.f64 eps 1/2))) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
x |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(+.f64 (*.f64 1/2 eps) x) |
(fma.f64 1/2 eps x) |
(fma.f64 eps 1/2 x) |
(*.f64 1/2 eps) |
(*.f64 eps 1/2) |
(+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)) |
(fma.f64 -1/48 (pow.f64 eps 3) (*.f64 eps 1/2)) |
(fma.f64 eps 1/2 (*.f64 (pow.f64 eps 3) -1/48)) |
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))) |
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 eps 1/2))) |
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 eps 1/2 (*.f64 (pow.f64 eps 3) -1/48))) |
(fma.f64 eps 1/2 (fma.f64 1/3840 (pow.f64 eps 5) (*.f64 (pow.f64 eps 3) -1/48))) |
(+.f64 (*.f64 1/3840 (pow.f64 eps 5)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (+.f64 (*.f64 -1/645120 (pow.f64 eps 7)) (*.f64 1/2 eps)))) |
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/48 (pow.f64 eps 3) (fma.f64 -1/645120 (pow.f64 eps 7) (*.f64 eps 1/2)))) |
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 (pow.f64 eps 3) -1/48 (fma.f64 eps 1/2 (*.f64 -1/645120 (pow.f64 eps 7))))) |
(fma.f64 (pow.f64 eps 3) -1/48 (fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 -1/645120 (pow.f64 eps 7) (*.f64 eps 1/2)))) |
(fma.f64 1/3840 (pow.f64 eps 5) (fma.f64 eps 1/2 (fma.f64 -1/645120 (pow.f64 eps 7) (*.f64 (pow.f64 eps 3) -1/48)))) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 0.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) | |
| ✓ | 3.3b | (log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
Compiled 26 to 7 computations (73.1% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | eps | @ | 0 | (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 1.0ms | x | @ | 0 | (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 0.0ms | eps | @ | 0 | (log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
| 0.0ms | eps | @ | inf | (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 0.0ms | x | @ | -inf | (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| 1× | batch-egg-rewrite |
| 912× | pow1_binary64 |
| 847× | add-log-exp_binary64 |
| 847× | log1p-expm1-u_binary64 |
| 847× | expm1-log1p-u_binary64 |
| 830× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 18 |
| 1 | 161 | 18 |
| 2 | 2204 | 18 |
| 1× | node limit |
| Inputs |
|---|
(log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sin.f64 x)) 1 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (sin.f64 x))) (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 eps) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 eps) 3) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))) (/.f64 (pow.f64 (sin.f64 x) 3) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (sin.f64 eps) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2) (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (/.f64 1 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (/.f64 1 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))) (-.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (sin.f64 (*.f64 (-.f64 eps x) 1/2))) (cos.f64 (*.f64 (+.f64 eps x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))) (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 eps) (sin.f64 x)) (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2)) (+.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (sin.f64 x) 3))) (neg.f64 (+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (sin.f64 x) (+.f64 (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (sin.f64 x) 2))) (neg.f64 (+.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (neg.f64 (sin.f64 x)) 3)) (+.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 x)))) (-.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 eps) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 2) (cbrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 eps)) (sqrt.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (sin.f64 eps)) (exp.f64 (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2) (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (sqrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (exp.f64 (sin.f64 x)) (exp.f64 (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (exp.f64 (sin.f64 eps)) (exp.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (exp.f64 (sin.f64 eps))) (neg.f64 (exp.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2)) (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) (sqrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (-.f64 (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 2) (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))))))) |
| 1× | egg-herbie |
| 530× | cancel-sign-sub-inv_binary64 |
| 526× | fma-neg_binary64 |
| 392× | unswap-sqr_binary64 |
| 369× | fma-def_binary64 |
| 328× | distribute-rgt-neg-in_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 66 | 422 |
| 1 | 189 | 388 |
| 2 | 512 | 354 |
| 3 | 1671 | 342 |
| 4 | 3779 | 338 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(exp.f64 (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (exp.f64 (neg.f64 (sin.f64 x)))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (neg.f64 (sin.f64 x))))) (exp.f64 (neg.f64 (sin.f64 x))))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (neg.f64 (sin.f64 x))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 4) (exp.f64 (neg.f64 (sin.f64 x))))) (exp.f64 (neg.f64 (sin.f64 x)))))) |
(exp.f64 (sin.f64 eps)) |
(+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps)))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 x 4) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))))) |
| Outputs |
|---|
(*.f64 -1 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(+.f64 eps (*.f64 -1 (sin.f64 x))) |
(+.f64 (neg.f64 (sin.f64 x)) eps) |
(-.f64 eps (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (fma.f64 -1/6 (pow.f64 eps 3) (neg.f64 (sin.f64 x)))) |
(-.f64 (fma.f64 -1/6 (pow.f64 eps 3) eps) (sin.f64 x)) |
(+.f64 eps (+.f64 (*.f64 -1 (sin.f64 x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 eps (fma.f64 -1 (sin.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))))) |
(+.f64 (-.f64 eps (sin.f64 x)) (fma.f64 1/120 (pow.f64 eps 5) (*.f64 -1/6 (pow.f64 eps 3)))) |
(+.f64 eps (-.f64 (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/120 (pow.f64 eps 5))) (sin.f64 x))) |
(fma.f64 -1/6 (pow.f64 eps 3) (-.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (sin.f64 x))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(fma.f64 -1 x (sin.f64 eps)) |
(-.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x) |
(+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (+.f64 (*.f64 -1/120 (pow.f64 x 5)) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)))) |
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps)) x)) |
(-.f64 (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1/120 (pow.f64 x 5) (sin.f64 eps))) x) |
(fma.f64 -1/120 (pow.f64 x 5) (-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(exp.f64 (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (exp.f64 (neg.f64 (sin.f64 x)))) |
(*.f64 (+.f64 eps 1) (exp.f64 (neg.f64 (sin.f64 x)))) |
(*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 eps 1)) |
(/.f64 (+.f64 eps 1) (exp.f64 (sin.f64 x))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (neg.f64 (sin.f64 x))))) (exp.f64 (neg.f64 (sin.f64 x))))) |
(fma.f64 eps (exp.f64 (neg.f64 (sin.f64 x))) (fma.f64 1/2 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (*.f64 eps eps)) (exp.f64 (neg.f64 (sin.f64 x))))) |
(+.f64 (exp.f64 (neg.f64 (sin.f64 x))) (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 eps (*.f64 1/2 (*.f64 eps eps))))) |
(*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 eps (fma.f64 1/2 (*.f64 eps eps) 1))) |
(/.f64 (+.f64 eps (fma.f64 1/2 (*.f64 eps eps) 1)) (exp.f64 (sin.f64 x))) |
(+.f64 (*.f64 eps (exp.f64 (neg.f64 (sin.f64 x)))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (exp.f64 (neg.f64 (sin.f64 x))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 4) (exp.f64 (neg.f64 (sin.f64 x))))) (exp.f64 (neg.f64 (sin.f64 x)))))) |
(fma.f64 eps (exp.f64 (neg.f64 (sin.f64 x))) (fma.f64 1/2 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (*.f64 eps eps)) (fma.f64 -1/8 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (pow.f64 eps 4)) (exp.f64 (neg.f64 (sin.f64 x)))))) |
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (pow.f64 eps 4)) 1) (exp.f64 (neg.f64 (sin.f64 x)))) (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 eps (*.f64 1/2 (*.f64 eps eps))))) |
(*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 (fma.f64 1/2 (*.f64 eps eps) (*.f64 -1/8 (pow.f64 eps 4))) (+.f64 eps 1))) |
(*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (+.f64 (+.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/8 (pow.f64 eps 4) 1)) eps)) |
(/.f64 (+.f64 (+.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/8 (pow.f64 eps 4) 1)) eps) (exp.f64 (sin.f64 x))) |
(exp.f64 (sin.f64 eps)) |
(+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))) |
(fma.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps))) (exp.f64 (sin.f64 eps))) |
(*.f64 (+.f64 (neg.f64 x) 1) (exp.f64 (sin.f64 eps))) |
(*.f64 (exp.f64 (sin.f64 eps)) (fma.f64 -1 x 1)) |
(*.f64 (exp.f64 (sin.f64 eps)) (-.f64 1 x)) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps)))) |
(fma.f64 1/2 (*.f64 (exp.f64 (sin.f64 eps)) (*.f64 x x)) (fma.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps))) (exp.f64 (sin.f64 eps)))) |
(+.f64 (exp.f64 (sin.f64 eps)) (*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 x x)) (neg.f64 x)))) |
(*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (fma.f64 -1 x 1) (*.f64 x (*.f64 x 1/2)))) |
(*.f64 (exp.f64 (sin.f64 eps)) (+.f64 1 (fma.f64 x (*.f64 x 1/2) (neg.f64 x)))) |
(*.f64 (exp.f64 (sin.f64 eps)) (fma.f64 x (*.f64 x 1/2) (-.f64 1 x))) |
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 x 4) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))))) |
(fma.f64 1/2 (*.f64 (exp.f64 (sin.f64 eps)) (*.f64 x x)) (fma.f64 -1/8 (*.f64 (exp.f64 (sin.f64 eps)) (pow.f64 x 4)) (fma.f64 -1 (*.f64 x (exp.f64 (sin.f64 eps))) (exp.f64 (sin.f64 eps))))) |
(+.f64 (*.f64 (+.f64 (neg.f64 x) 1) (exp.f64 (sin.f64 eps))) (*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (*.f64 1/2 (*.f64 x x)) (*.f64 -1/8 (pow.f64 x 4))))) |
(fma.f64 (fma.f64 -1 x 1) (exp.f64 (sin.f64 eps)) (*.f64 (exp.f64 (sin.f64 eps)) (fma.f64 1/2 (*.f64 x x) (*.f64 -1/8 (pow.f64 x 4))))) |
(*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (-.f64 1 x) (fma.f64 1/2 (*.f64 x x) (*.f64 -1/8 (pow.f64 x 4))))) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.1b | (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) |
| ✓ | 3.6b | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
Compiled 36 to 9 computations (75% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | 0 | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 0.0ms | eps | @ | -inf | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 0.0ms | eps | @ | inf | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 0.0ms | x | @ | inf | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 0.0ms | eps | @ | 0 | (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
| 1× | batch-egg-rewrite |
| 906× | pow1_binary64 |
| 827× | add-log-exp_binary64 |
| 826× | log1p-expm1-u_binary64 |
| 826× | expm1-log1p-u_binary64 |
| 807× | add-exp-log_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 34 |
| 1 | 199 | 30 |
| 2 | 2440 | 30 |
| 1× | node limit |
| Inputs |
|---|
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
(fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 1) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) 2) (cbrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 2) (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps))) (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 2)) (-.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 1) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 0) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)) (+.f64 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (-.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (pow.f64 (sin.f64 x) 2)) (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (sin.f64 x)))))))) |
| 1× | egg-herbie |
| 728× | fma-neg_binary64 |
| 678× | cancel-sign-sub-inv_binary64 |
| 640× | associate-*l*_binary64 |
| 518× | distribute-rgt-neg-in_binary64 |
| 504× | associate-*r*_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 66 | 847 |
| 1 | 194 | 838 |
| 2 | 502 | 792 |
| 3 | 1593 | 791 |
| 4 | 4905 | 789 |
| 1× | node limit |
| Inputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps)))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(*.f64 -1 (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
| Outputs |
|---|
(sin.f64 eps) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)) |
(fma.f64 (cos.f64 eps) x (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) |
(fma.f64 x (+.f64 (*.f64 (sin.f64 eps) (*.f64 x -1/2)) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(*.f64 (cos.f64 x) eps) |
(*.f64 eps (cos.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))) |
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps eps))) |
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))) |
(+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps eps)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))) |
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps eps)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 1/24 (pow.f64 eps 4))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(sin.f64 eps) |
(+.f64 (*.f64 -1 x) (sin.f64 eps)) |
(fma.f64 -1 x (sin.f64 eps)) |
(-.f64 (sin.f64 eps) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 -1 x (sin.f64 eps))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps)) x) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps)))) |
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x))) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (-.f64 (fma.f64 1/6 (pow.f64 x 3) (sin.f64 eps)) x)) |
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x))) |
(fma.f64 x (*.f64 x (+.f64 (*.f64 x 1/6) (*.f64 (sin.f64 eps) -1/2))) (-.f64 (sin.f64 eps) x)) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(*.f64 -1 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x))) |
(fma.f64 (cos.f64 x) eps (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 eps (cos.f64 x)) (sin.f64 x)) |
(fma.f64 eps (cos.f64 x) (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))) |
(+.f64 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))) |
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))) |
(fma.f64 (cos.f64 x) eps (fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))))) |
(+.f64 (-.f64 (*.f64 (*.f64 -1/6 (cos.f64 x)) (pow.f64 eps 3)) (sin.f64 x)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 1/120 (pow.f64 eps 5))))) |
(-.f64 (*.f64 (cos.f64 x) (+.f64 (+.f64 eps (*.f64 1/120 (pow.f64 eps 5))) (*.f64 -1/6 (pow.f64 eps 3)))) (sin.f64 x)) |
(fma.f64 (cos.f64 x) (+.f64 eps (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (*.f64 -1/6 (pow.f64 eps 3)))) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))) |
Compiled 13401 to 7157 computations (46.6% saved)
80 alts after pruning (73 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 686 | 34 | 720 |
| Fresh | 25 | 39 | 64 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 7 | 10 |
| Total | 715 | 80 | 795 |
| Status | Error | Program |
|---|---|---|
| 30.7b | (log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))) (exp.f64 (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 0.3b | (*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) | |
| 45.8b | (log.f64 (-.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)) | |
| 42.3b | (-.f64 (sin.f64 eps) x) | |
| ✓ | 30.2b | (*.f64 (cos.f64 x) eps) |
| 0.3b | (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) | |
| 60.2b | (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) | |
| 30.6b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) | |
| 43.4b | (cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) | |
| 47.2b | (+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) | |
| 38.6b | (+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) | |
| 35.6b | (exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 1/3)) | |
| 31.7b | (sin.f64 eps) | |
| 0.4b | (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) | |
| 34.5b | (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) | |
| 25.7b | (*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (-.f64 x x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 40.2b | (-.f64 (sin.f64 eps) (sin.f64 x)) | |
| 52.7b | (sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) | |
| 59.3b | (fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))) | |
| 52.0b | (*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 59.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) | |
| 47.3b | (+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) | |
| 35.4b | (exp.f64 (log.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))) | |
| 30.4b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) | |
| 18.7b | (fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) | |
| ✓ | 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
| 33.7b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2)) 2) | |
| 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (log1p.f64 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))) | |
| 31.8b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) | |
| 30.4b | (*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) | |
| 52.4b | (-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) | |
| 16.6b | (fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) | |
| 59.8b | (neg.f64 (sin.f64 x)) | |
| 31.1b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))) | |
| 2.2b | (fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 1)) | |
| 33.9b | (fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) | |
| 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x)))) | |
| ✓ | 45.7b | (log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
| 40.6b | (pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) | |
| 1.7b | (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 15.5b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (log1p.f64 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) | |
| 48.3b | (+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) | |
| 45.7b | (+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) | |
| 46.5b | eps | |
| ✓ | 40.1b | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 0.4b | (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) | |
| 41.1b | (*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 2) 2) | |
| 32.7b | (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) | |
| 30.5b | (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) | |
| 41.2b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) | |
| 53.2b | (*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) | |
| 15.6b | (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 15.4b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (expm1.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) | |
| 62.3b | (*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) | |
| 29.4b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x))) 2) | |
| 52.2b | (*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) | |
| 16.3b | (*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 3) 2) | |
| ✓ | 24.2b | (-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
| 30.5b | (*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) 2) | |
| 30.6b | (log.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) | |
| 45.7b | (-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) | |
| 39.7b | (*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) | |
| 15.4b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) | |
| ✓ | 61.2b | (-.f64 x x) |
| 59.9b | (log.f64 (exp.f64 (neg.f64 (sin.f64 x)))) | |
| 40.2b | (log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) | |
| 0.4b | (fma.f64 (sin.f64 eps) (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 1 (+.f64 -1 (cos.f64 eps))))) | |
| 0.3b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x)))) 2) | |
| 46.9b | (pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) | |
| 40.4b | (*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) | |
| 27.8b | (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) | |
| 45.9b | (log.f64 (exp.f64 (sin.f64 eps))) | |
| 0.4b | (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) | |
| ✓ | 24.3b | (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
| 31.0b | (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) | |
| 41.2b | (-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) | |
| 30.6b | (*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) | |
| 0.5b | (fma.f64 (sin.f64 eps) (cos.f64 x) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 3)) | |
| 48.9b | (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) |
Compiled 1207 to 872 computations (27.8% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 x)) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) 2) |
(log.f64 (exp.f64 (sin.f64 eps))) |
(exp.f64 (log.f64 (sin.f64 eps))) |
(log.f64 (exp.f64 (neg.f64 (sin.f64 x)))) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps))) |
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2)) |
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) |
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3)) |
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x))) 2) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(log.f64 (-.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)) |
(+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) x) |
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x)))) |
(log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (log1p.f64 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (expm1.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 1 (+.f64 -1 (cos.f64 eps))))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2)) 2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 2) 2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 3) 2) |
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (-.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (cos.f64 x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 x)))) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/24))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x x) 1/2)) (cos.f64 (*.f64 eps 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x x) 1/2)) (sin.f64 (*.f64 eps 1/2))))) 2) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x)))) |
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 x) (pow.f64 (sin.f64 eps) 2)) (+.f64 1 (cos.f64 eps))))) |
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (-.f64 x x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))) |
(exp.f64 (log.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 -1 (cos.f64 eps)) (sin.f64 x))))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) (sin.f64 x))) |
(exp.f64 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (log1p.f64 (expm1.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))))) |
(log1p.f64 (expm1.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) |
(log.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) |
(pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 3) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (pow.f64 (cbrt.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) 3)) |
(pow.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3) 1/3) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))) 1)) |
(exp.f64 (log.f64 (-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3)) (sin.f64 x))) |
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 1/3)) |
(-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
(-.f64 (fma.f64 (sin.f64 x) (cos.f64 eps) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (sin.f64 eps))))) (sin.f64 x)) |
(log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (+.f64 -1 (cos.f64 eps))) (exp.f64 (*.f64 (sin.f64 eps) (cos.f64 x))))) |
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) 2)) |
(-.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (exp.f64 (*.f64 (sin.f64 x) (cos.f64 eps))))) (sin.f64 x)) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (sin.f64 x)))))) |
(fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (*.f64 (sin.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) |
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x)))))) |
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))))) |
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x)) |
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
(exp.f64 (log.f64 (fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))))) |
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3) (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 2) (-.f64 (pow.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) 2) (*.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))))) |
| Outputs |
|---|
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
4 calls:
| 186.0ms | eps |
| 171.0ms | x |
| 81.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 80.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 0.3b | 1 | x |
| 0.3b | 1 | eps |
| 0.3b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 0.3b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 2249 to 906 computations (59.7% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 x)) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) 2) |
(log.f64 (exp.f64 (sin.f64 eps))) |
(exp.f64 (log.f64 (sin.f64 eps))) |
(log.f64 (exp.f64 (neg.f64 (sin.f64 x)))) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps))) |
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2)) |
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) |
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3)) |
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x))) 2) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(log.f64 (-.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)) |
(+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) x) |
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x)))) |
(log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (log1p.f64 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (expm1.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 1 (+.f64 -1 (cos.f64 eps))))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x)) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 1/2 eps x))) 2)) 2) |
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 2) 2) |
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (fma.f64 1/2 eps x)) (sin.f64 (*.f64 1/2 eps)))) 3) 2) |
| Outputs |
|---|
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
4 calls:
| 132.0ms | eps |
| 76.0ms | x |
| 73.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 50.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 0.4b | 1 | x |
| 0.4b | 1 | eps |
| 0.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 0.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 1320 to 596 computations (54.8% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 x)) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) 2) |
(log.f64 (exp.f64 (sin.f64 eps))) |
(exp.f64 (log.f64 (sin.f64 eps))) |
(log.f64 (exp.f64 (neg.f64 (sin.f64 x)))) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps))) |
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2)) |
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) |
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3)) |
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x))) 2) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(log.f64 (-.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)) |
(+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))) x) |
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x) |
(*.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))) |
(*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps))))) |
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x))) |
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (sin.f64 (+.f64 x eps)))) (exp.f64 (sin.f64 x)))) |
(log.f64 (/.f64 (exp.f64 (sin.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (log1p.f64 (expm1.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (expm1.f64 (log1p.f64 (cos.f64 (fma.f64 1/2 eps x))))) 2) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 1 (+.f64 -1 (cos.f64 eps))))) |
| Outputs |
|---|
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
4 calls:
| 83.0ms | eps |
| 66.0ms | x |
| 51.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 49.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 0.4b | 1 | x |
| 0.4b | 1 | eps |
| 0.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 0.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 1219 to 555 computations (54.5% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 x)) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (-.f64 eps x) 1/2)) (cos.f64 (*.f64 (+.f64 eps x) 1/2))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 (*.f64 eps eps) -1/12))))) 2) |
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (sin.f64 x) -1/4)) (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) 2) |
(log.f64 (exp.f64 (sin.f64 eps))) |
(exp.f64 (log.f64 (sin.f64 eps))) |
(log.f64 (exp.f64 (neg.f64 (sin.f64 x)))) |
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps))) |
(sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 2)) |
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3) |
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3)) |
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3) |
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (neg.f64 (sin.f64 x))) |
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (sin.f64 eps) x)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x)) |
(-.f64 (*.f64 x (fma.f64 (sin.f64 eps) (*.f64 x -1/2) (cos.f64 eps))) x) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x))) 2) |
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) x)) (cos.f64 eps)) x) (sin.f64 eps)) x) |
(*.f64 (*.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 eps)))) (cos.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))) 2) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 (*.f64 eps -1/6) (cos.f64 x))))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (sin.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))))) |
(*.f64 (*.f64 (sin.f64 (*.f64 (fma.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(*.f64 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/4)) (*.f64 1/48 (pow.f64 eps 4))))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (/.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (+.f64 x eps) 2)) 1/2) (-.f64 (-.f64 x x) eps)))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (pow.f64 (-.f64 eps x) 2)) (/.f64 1 (+.f64 (-.f64 x eps) x))) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(log.f64 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(exp.f64 (log.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 3)) |
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 2)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 eps) (sin.f64 x))) 3) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (expm1.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x)) |
(exp.f64 (log.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x)) |
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x)) |
(pow.f64 (sqrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 2) |
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3) |
(log.f64 (-.f64 (+.f64 1 (exp.f64 (-.f64 (sin.f64 eps) (sin.f64 x)))) 1)) |
(+.f64 (sin.f64 x) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))) |
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) x) x)) |
(-.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (+.f64 x eps)))) 1) (sin.f64 x)) |
| Outputs |
|---|
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
4 calls:
| 92.0ms | x |
| 51.0ms | eps |
| 33.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 32.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 15.4b | 1 | x |
| 15.4b | 1 | eps |
| 15.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 15.4b | 1 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 1006 to 454 computations (54.9% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) 2) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps)))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x))))) |
| Outputs |
|---|
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
3 calls:
| 69.0ms | eps |
| 68.0ms | x |
| 24.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 15.2b | 3 | x |
| 14.9b | 3 | eps |
| 15.0b | 3 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 271 to 132 computations (51.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 61.0ms | 2.430927827935982e-5 | 23.385242453441677 |
| 89.0ms | -8.825915668698037e-7 | -2.1706050148096177e-11 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 eps 1/2))) 2) |
| Outputs |
|---|
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
3 calls:
| 73.0ms | eps |
| 61.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| 46.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 15.2b | 3 | x |
| 15.0b | 3 | eps |
| 15.0b | 3 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 216 to 104 computations (51.9% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 65.0ms | 2.430927827935982e-5 | 23.385242453441677 |
| 68.0ms | -0.01967658489477877 | -8.825915668698037e-7 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
(+.f64 1 (-.f64 (-.f64 (sin.f64 eps) (sin.f64 x)) 1)) |
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
| Outputs |
|---|
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
3 calls:
| 51.0ms | eps |
| 37.0ms | x |
| 22.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 15.2b | 3 | x |
| 15.0b | 3 | eps |
| 15.0b | 3 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 195 to 90 computations (53.8% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 60.0ms | 2.430927827935982e-5 | 23.385242453441677 |
| 61.0ms | -8.825915668698037e-7 | -2.1706050148096177e-11 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 x) (sin.f64 x)) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)) |
(-.f64 (+.f64 1 (-.f64 (sin.f64 eps) (sin.f64 x))) 1) |
| Outputs |
|---|
(-.f64 (sin.f64 eps) (sin.f64 x)) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (sin.f64 eps) (sin.f64 x)) |
3 calls:
| 33.0ms | eps |
| 32.0ms | x |
| 20.0ms | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
| Error | Segments | Branch |
|---|---|---|
| 16.5b | 3 | x |
| 15.0b | 3 | eps |
| 15.8b | 3 | (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) |
Compiled 150 to 69 computations (54% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 63.0ms | 2.430927827935982e-5 | 23.385242453441677 |
| 62.0ms | -8.825915668698037e-7 | -2.1706050148096177e-11 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
(*.f64 (cos.f64 x) eps) |
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) |
(*.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) |
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))) |
| Outputs |
|---|
(sin.f64 eps) |
(*.f64 (cos.f64 x) eps) |
(sin.f64 eps) |
2 calls:
| 25.0ms | x |
| 25.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 16.7b | 3 | x |
| 15.6b | 3 | eps |
Compiled 101 to 49 computations (51.5% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 58.0ms | 2.430927827935982e-5 | 23.385242453441677 |
| 63.0ms | -8.825915668698037e-7 | -2.1706050148096177e-11 |
Compiled 14 to 10 computations (28.6% saved)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
(sin.f64 eps) |
(sin.f64 eps) |
(neg.f64 (sin.f64 x)) |
(neg.f64 (sin.f64 x)) |
(-.f64 (sin.f64 eps) x) |
| Outputs |
|---|
(sin.f64 eps) |
2 calls:
| 9.0ms | x |
| 8.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 31.7b | 1 | x |
| 31.7b | 1 | eps |
Compiled 65 to 32 computations (50.8% saved)
Total -16.2b remaining (-34.9%)
Threshold costs -16.2b (-34.9%)
| Inputs |
|---|
eps |
eps |
(-.f64 x x) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 eps x)))) |
(+.f64 eps (*.f64 x (*.f64 -1/2 (*.f64 eps eps)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x x)))) |
(+.f64 eps (*.f64 eps (*.f64 -1/2 (*.f64 x (+.f64 eps x))))) |
| Outputs |
|---|
eps |
2 calls:
| 6.0ms | x |
| 5.0ms | eps |
| Error | Segments | Branch |
|---|---|---|
| 46.5b | 1 | x |
| 46.5b | 1 | eps |
Compiled 51 to 28 computations (45.1% saved)
| 1× | egg-herbie |
| 133× | distribute-rgt-neg-in_binary64 |
| 110× | cancel-sign-sub-inv_binary64 |
| 93× | distribute-lft-neg-out_binary64 |
| 78× | distribute-lft-neg-in_binary64 |
| 72× | neg-sub0_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 61 | 282 |
| 1 | 93 | 282 |
| 2 | 115 | 282 |
| 3 | 140 | 282 |
| 4 | 168 | 282 |
| 5 | 206 | 282 |
| 6 | 252 | 282 |
| 7 | 304 | 282 |
| 8 | 343 | 282 |
| 9 | 376 | 282 |
| 10 | 406 | 282 |
| 11 | 437 | 282 |
| 12 | 476 | 282 |
| 13 | 517 | 282 |
| 14 | 564 | 282 |
| 15 | 626 | 282 |
| 16 | 689 | 282 |
| 17 | 759 | 282 |
| 18 | 836 | 282 |
| 19 | 881 | 282 |
| 20 | 907 | 282 |
| 21 | 939 | 282 |
| 22 | 965 | 282 |
| 23 | 973 | 282 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -2835694732801587/144115188075855872) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (cos.f64 x) eps) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (sin.f64 eps) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (cos.f64 x) eps) (sin.f64 eps))) |
(sin.f64 eps) |
eps |
| Outputs |
|---|
(*.f64 (sin.f64 eps) (-.f64 (cos.f64 x) (/.f64 (sin.f64 x) (/.f64 (+.f64 (cos.f64 eps) 1) (sin.f64 eps))))) |
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (-.f64 (sin.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps)))) |
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (sin.f64 x))) |
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x))) |
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1))) |
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (-.f64 1 (cos.f64 eps)))) |
(*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (+.f64 (*.f64 1/2 eps) x))) 2) |
(*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (+.f64 x (*.f64 eps 1/2)))) 2) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (+.f64 (*.f64 (*.f64 -1/2 (sin.f64 x)) eps) (cos.f64 x))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (*.f64 (sin.f64 x) -1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (-.f64 (cos.f64 x) (*.f64 eps (*.f64 (sin.f64 x) 1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -2835694732801587/144115188075855872) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (pow.f64 eps 3))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -2835694732801587/144115188075855872) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/6 (pow.f64 eps 3))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 x)) 2) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 2 (*.f64 (cos.f64 x) (sin.f64 (*.f64 eps 1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (cos.f64 x) eps) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (cos.f64 x)) (-.f64 (sin.f64 eps) (sin.f64 x)))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (sin.f64 eps) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 (cos.f64 x) eps) (sin.f64 eps))) |
(if (<=.f64 eps -1041980208362341/1180591620717411303424) (sin.f64 eps) (if (<=.f64 eps 7174832560574993/295147905179352825856) (*.f64 eps (cos.f64 x)) (sin.f64 eps))) |
(sin.f64 eps) |
eps |
Compiled 203 to 127 computations (37.4% saved)
| 2× | egg-herbie |
| 591× | fma-def_binary64 |
| 589× | sub-neg_binary64 |
| 538× | fma-def_binary64 |
| 441× | *-commutative_binary64 |
| 417× | associate-*r*_binary64 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 89 | 1080 |
| 1 | 261 | 1063 |
| 2 | 710 | 977 |
| 3 | 2290 | 973 |
| 4 | 3991 | 973 |
| 5 | 5252 | 972 |
| 6 | 7312 | 972 |
| 0 | 137 | 1623 |
| 1 | 404 | 1569 |
| 2 | 1146 | 1497 |
| 3 | 4812 | 1440 |
| 1× | node limit |
| 1× | node limit |
Compiled 367 to 249 computations (32.2% saved)
Compiled 183 to 78 computations (57.4% saved)
Loading profile data...