Time bar (total: 7.2s)
| 1× | search |
| True | Other | False | Iter |
|---|---|---|---|
| 0% | 25% | 75% | 0 |
| 0% | 25% | 75% | 1 |
| 12.5% | 12.5% | 75% | 2 |
| 12.5% | 12.5% | 75% | 3 |
| 18.7% | 6.2% | 75% | 4 |
| 21.8% | 3.1% | 75% | 5 |
| 23.4% | 1.6% | 75% | 6 |
| 23.4% | 1.6% | 75% | 7 |
| 24.2% | 0.8% | 75% | 8 |
| 24.2% | 0.8% | 75% | 9 |
| 24.6% | 0.4% | 75% | 10 |
| 24.6% | 0.4% | 75% | 11 |
| 24.8% | 0.2% | 75% | 12 |
Compiled 20 to 14 computations (30% saved)
| 1.1s | 2064× | body | 1024 | valid |
| 1.0s | 5135× | body | 256 | valid |
| 378.0ms | 1051× | body | 512 | valid |
| 5.0ms | 6× | body | 2048 | valid |
| 2× | egg-herbie |
| 8× | *-commutative_binary64 |
| 4× | associate-/l*_binary64 |
| 4× | associate-/r/_binary64 |
| 4× | fma-def_binary64 |
| 2× | +-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 16 | 34 |
| 1 | 28 | 30 |
| 2 | 40 | 30 |
| 3 | 46 | 30 |
| 4 | 48 | 30 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 v (sin.f64 e)) (+.f64 1 (*.f64 v (cos.f64 e)))) |
| Outputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 e (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) (sin.f64 v))) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(*.f64 (sin.f64 v) (/.f64 e (fma.f64 e (cos.f64 v) 1))) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 v (sin.f64 e)) (+.f64 1 (*.f64 v (cos.f64 e)))) |
(*.f64 (/.f64 v (fma.f64 v (cos.f64 e) 1)) (sin.f64 e)) |
(*.f64 (sin.f64 e) (/.f64 v (fma.f64 v (cos.f64 e) 1))) |
Compiled 15 to 11 computations (26.7% saved)
| 1× | egg-herbie |
| 4× | *-commutative_binary64 |
| 2× | associate-/l*_binary64 |
| 2× | associate-/r/_binary64 |
| 2× | fma-def_binary64 |
| 1× | +-commutative_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 17 |
| 1 | 17 | 15 |
| 2 | 23 | 15 |
| 3 | 26 | 15 |
| 4 | 27 | 15 |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| Outputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 e (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) (sin.f64 v))) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
Compiled 23 to 13 computations (43.5% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 2 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.1b | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| ▶ | 0.1b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
Compiled 25 to 17 computations (32% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (sin.f64 v) |
| ✓ | 0.0b | (cos.f64 v) |
| ✓ | 0.1b | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
Compiled 32 to 14 computations (56.3% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | v | @ | 0 | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| 2.0ms | v | @ | inf | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| 1.0ms | v | @ | -inf | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| 1.0ms | e | @ | 0 | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| 1.0ms | e | @ | inf | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
| 1× | batch-egg-rewrite |
| 921× | pow1_binary64 |
| 846× | add-log-exp_binary64 |
| 846× | log1p-expm1-u_binary64 |
| 846× | expm1-log1p-u_binary64 |
| 826× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 21 |
| 1 | 178 | 21 |
| 2 | 2236 | 21 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(cos.f64 v) |
(sin.f64 v) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 e (sin.f64 v))) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (sin.f64 v)) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (cbrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (sin.f64 v)) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (sqrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 v)) e) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (neg.f64 (sin.f64 v))) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (cos.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 v)) (pow.f64 (cbrt.f64 (cos.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 v)) 2) (cbrt.f64 (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 v)) (sqrt.f64 (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 v) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 v)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 v)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 v) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 v) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 v))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (cbrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 v) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 v)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 v)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 v) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 v) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 v))))))) |
| 1× | egg-herbie |
| 753× | fma-neg_binary64 |
| 588× | fma-def_binary64 |
| 503× | unswap-sqr_binary64 |
| 410× | associate-*l*_binary64 |
| 389× | associate-*r*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 113 | 1093 |
| 1 | 336 | 1042 |
| 2 | 1059 | 1018 |
| 3 | 4845 | 994 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
1 |
(+.f64 1 (*.f64 -1/2 (pow.f64 v 2))) |
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6))))) |
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
| Outputs |
|---|
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (*.f64 (sin.f64 v) e)) |
(-.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))) (*.f64 (sin.f64 v) (neg.f64 (*.f64 e (*.f64 e (cos.f64 v)))))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 e (*.f64 e (cos.f64 v))) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (sin.f64 v) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(fma.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 (neg.f64 (sin.f64 v)) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (-.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 e 3)) (pow.f64 (cos.f64 v) 4))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (-.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 e 3)) (pow.f64 (cos.f64 v) 4))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 v (/.f64 (+.f64 e 1) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 v (/.f64 (+.f64 e 1) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (*.f64 (/.f64 e (+.f64 e 1)) v)) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 e (*.f64 e 1/2)) (pow.f64 (+.f64 e 1) 2))) (*.f64 e (/.f64 v (+.f64 e 1)))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 v (/.f64 (+.f64 e 1) e))) (*.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (+.f64 e 1)) e) (/.f64 (*.f64 (*.f64 e e) 1/24) (pow.f64 (+.f64 e 1) 2)))) (/.f64 v (/.f64 (+.f64 e 1) e)))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2)) (*.f64 (/.f64 e (+.f64 e 1)) v))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 e (*.f64 e 1/2)) (pow.f64 (+.f64 e 1) 2))) (fma.f64 (pow.f64 v 5) (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (fma.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24 (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2))) (*.f64 e (/.f64 v (+.f64 e 1))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 v (/.f64 (+.f64 e 1) e))) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) -1/5040) (fma.f64 1/24 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e))))) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) -1/720)))) (*.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (neg.f64 (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 v (/.f64 (+.f64 e 1) e))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (+.f64 e 1)) e) (/.f64 (*.f64 (*.f64 e e) 1/24) (pow.f64 (+.f64 e 1) 2)))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) -1/5040) (fma.f64 1/24 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (+.f64 e 1)) e) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (+.f64 e 1)) e) (/.f64 (*.f64 (*.f64 e e) 1/24) (pow.f64 (+.f64 e 1) 2)))) (+.f64 e 1)) e) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) -1/720))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2)) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) -1/5040) (fma.f64 -1/2 (*.f64 e (/.f64 (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2)) (+.f64 e 1))) (fma.f64 1/24 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/720)))) (*.f64 (/.f64 e (+.f64 e 1)) v)))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 e (*.f64 e 1/2)) (pow.f64 (+.f64 e 1) 2))) (fma.f64 (pow.f64 v 5) (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (fma.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24 (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2))) (fma.f64 (pow.f64 v 7) (fma.f64 (/.f64 e (+.f64 e 1)) -1/5040 (fma.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/720 (fma.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) -1/24 (*.f64 (*.f64 e (/.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (fma.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24 (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2))) (+.f64 e 1))) 1/2)))) (*.f64 e (/.f64 v (+.f64 e 1)))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
1 |
(+.f64 1 (*.f64 -1/2 (pow.f64 v 2))) |
(+.f64 1 (*.f64 -1/2 (*.f64 v v))) |
(fma.f64 -1/2 (*.f64 v v) 1) |
(fma.f64 v (*.f64 v -1/2) 1) |
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 1 (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/2 (*.f64 v v)))) |
(fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) 1)) |
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6))))) |
(+.f64 1 (fma.f64 1/24 (pow.f64 v 4) (fma.f64 -1/2 (*.f64 v v) (*.f64 -1/720 (pow.f64 v 6))))) |
(+.f64 1 (fma.f64 1/24 (pow.f64 v 4) (fma.f64 v (*.f64 v -1/2) (*.f64 -1/720 (pow.f64 v 6))))) |
(+.f64 (fma.f64 v (*.f64 v -1/2) 1) (fma.f64 -1/720 (pow.f64 v 6) (*.f64 1/24 (pow.f64 v 4)))) |
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(+.f64 v (*.f64 (pow.f64 v 3) -1/6)) |
(fma.f64 (pow.f64 v 3) -1/6 v) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (*.f64 (pow.f64 v 5) 1/120))) |
(+.f64 v (fma.f64 (pow.f64 v 3) -1/6 (*.f64 (pow.f64 v 5) 1/120))) |
(fma.f64 (pow.f64 v 3) -1/6 (fma.f64 (pow.f64 v 5) 1/120 v)) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 -1/5040 (pow.f64 v 7) (*.f64 (pow.f64 v 5) 1/120)))) |
(+.f64 v (fma.f64 (pow.f64 v 3) -1/6 (fma.f64 (pow.f64 v 5) 1/120 (*.f64 (pow.f64 v 7) -1/5040)))) |
(+.f64 v (fma.f64 (pow.f64 v 3) -1/6 (fma.f64 (pow.f64 v 7) -1/5040 (*.f64 (pow.f64 v 5) 1/120)))) |
(+.f64 (fma.f64 (pow.f64 v 3) -1/6 v) (fma.f64 (pow.f64 v 5) 1/120 (*.f64 (pow.f64 v 7) -1/5040))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (cos.f64 v) | |
| ✓ | 0.0b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| ✓ | 0.1b | (*.f64 e (cos.f64 v)) |
| ✓ | 0.1b | (*.f64 e (sin.f64 v)) |
Compiled 34 to 12 computations (64.7% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | v | @ | -inf | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 1.0ms | v | @ | 0 | (*.f64 e (cos.f64 v)) |
| 1.0ms | e | @ | 0 | (*.f64 e (sin.f64 v)) |
| 1.0ms | e | @ | 0 | (*.f64 e (cos.f64 v)) |
| 1.0ms | v | @ | 0 | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 1× | batch-egg-rewrite |
| 552× | log-prod_binary64 |
| 370× | prod-diff_binary64 |
| 345× | pow-prod-down_binary64 |
| 274× | pow2_binary64 |
| 254× | fma-def_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 29 |
| 1 | 207 | 27 |
| 2 | 2831 | 27 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 e (sin.f64 v)) |
(*.f64 e (cos.f64 v)) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 e (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (sin.f64 v))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (sin.f64 v)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 e (sin.f64 v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (sin.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (sin.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (sin.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (sin.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 e (sin.f64 v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 e (sin.f64 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 e (sin.f64 v)))) 2)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 e (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (cos.f64 v))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (cos.f64 v)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (fma.f64 e (cos.f64 v) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (cos.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (cos.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (cos.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (cos.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (cos.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (cos.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (cos.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (cos.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 e (cos.f64 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 e (cos.f64 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 e (cos.f64 v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 e (cos.f64 v) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 e (cos.f64 v) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (pow.f64 (*.f64 e (cos.f64 v)) 3)) (/.f64 1 (fma.f64 (*.f64 e (cos.f64 v)) (fma.f64 e (cos.f64 v) -1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (pow.f64 (*.f64 e (cos.f64 v)) 2)) (/.f64 1 (-.f64 1 (*.f64 e (cos.f64 v)))) -1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (*.f64 (sin.f64 v) (/.f64 1 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) (*.f64 e (/.f64 1 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 e (sin.f64 v)) (/.f64 1 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 2) (*.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) (/.f64 1 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) 2) (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) (*.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) (/.f64 1 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) (sqrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 v) (neg.f64 e)) (/.f64 1 (neg.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 e (cos.f64 v) 1)) (*.f64 e (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e 1) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) 1) (/.f64 e (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 2) 1) (/.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) 1) (/.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (/.f64 (sin.f64 v) (cbrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (/.f64 e (cbrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) -2) (/.f64 (*.f64 e (sin.f64 v)) (cbrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 2) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (/.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) (cbrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (/.f64 (sin.f64 v) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (/.f64 e (sqrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 e (cos.f64 v) 1) -1/2) (/.f64 (*.f64 e (sin.f64 v)) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 2) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (/.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (pow.f64 (*.f64 e (cos.f64 v)) 3))) (fma.f64 (*.f64 e (cos.f64 v)) (fma.f64 e (cos.f64 v) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 e (sin.f64 v)) (-.f64 1 (pow.f64 (*.f64 e (cos.f64 v)) 2))) (-.f64 1 (*.f64 e (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 e (sin.f64 v)) 3) (pow.f64 (fma.f64 e (cos.f64 v) 1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 e (sin.f64 v)) (neg.f64 (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 e (sin.f64 v)) 3) (pow.f64 (fma.f64 e (cos.f64 v) 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v)))) -1)))))) |
| 1× | egg-herbie |
| 753× | fma-neg_binary64 |
| 653× | fma-def_binary64 |
| 500× | associate-*l*_binary64 |
| 475× | associate-*r*_binary64 |
| 350× | distribute-rgt-neg-in_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 116 | 1369 |
| 1 | 357 | 1319 |
| 2 | 1154 | 1282 |
| 3 | 5345 | 1224 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
e |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 v 4) e)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e)) |
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 v 6) e)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 v 4) e)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e))) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
| Outputs |
|---|
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 v e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 e (+.f64 v (*.f64 1/120 (pow.f64 v 5))))) |
(*.f64 e (+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (fma.f64 v e (*.f64 (*.f64 -1/5040 (pow.f64 v 7)) e)))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 e (+.f64 v (*.f64 -1/5040 (pow.f64 v 7)))))) |
(*.f64 e (+.f64 (fma.f64 -1/5040 (pow.f64 v 7) v) (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5))))) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
e |
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e) |
(fma.f64 -1/2 (*.f64 e (*.f64 v v)) e) |
(fma.f64 -1/2 (*.f64 v (*.f64 v e)) e) |
(*.f64 e (fma.f64 -1/2 (*.f64 v v) 1)) |
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 v 4) e)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e)) |
(fma.f64 1/24 (*.f64 e (pow.f64 v 4)) (fma.f64 -1/2 (*.f64 e (*.f64 v v)) e)) |
(fma.f64 1/24 (*.f64 e (pow.f64 v 4)) (fma.f64 -1/2 (*.f64 v (*.f64 v e)) e)) |
(fma.f64 e (fma.f64 1/24 (pow.f64 v 4) (*.f64 v (*.f64 v -1/2))) e) |
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 v 6) e)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 v 4) e)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 v 2) e)) e))) |
(fma.f64 -1/720 (*.f64 e (pow.f64 v 6)) (fma.f64 1/24 (*.f64 e (pow.f64 v 4)) (fma.f64 -1/2 (*.f64 e (*.f64 v v)) e))) |
(fma.f64 -1/720 (*.f64 e (pow.f64 v 6)) (fma.f64 1/24 (*.f64 e (pow.f64 v 4)) (fma.f64 -1/2 (*.f64 v (*.f64 v e)) e))) |
(fma.f64 e (*.f64 -1/720 (pow.f64 v 6)) (fma.f64 e (fma.f64 1/24 (pow.f64 v 4) (*.f64 v (*.f64 v -1/2))) e)) |
(*.f64 e (+.f64 (fma.f64 -1/2 (*.f64 v v) 1) (fma.f64 -1/720 (pow.f64 v 6) (*.f64 1/24 (pow.f64 v 4))))) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (cos.f64 v) e) |
(*.f64 e (cos.f64 v)) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) e)) |
(-.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e)))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))) (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (neg.f64 (*.f64 e e)))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (pow.f64 e 4)) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 (cos.f64 v) (*.f64 e e)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (sin.f64 v) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (-.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (-.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (*.f64 e (pow.f64 (cos.f64 v) 3))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 v (/.f64 (+.f64 e 1) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (*.f64 (/.f64 v (+.f64 e 1)) e)) |
(fma.f64 (pow.f64 v 3) (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (*.f64 e (/.f64 v (+.f64 e 1)))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (*.f64 (/.f64 e (+.f64 e 1)) v)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 v (/.f64 (+.f64 e 1) e))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))))) (*.f64 (/.f64 v (+.f64 e 1)) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 e 1/120) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (/.f64 (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (/.f64 (/.f64 (+.f64 e 1) e) -1/2)))) (*.f64 e (/.f64 v (+.f64 e 1))))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (+.f64 1/120 (*.f64 -1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 -1/2 (+.f64 e 1)) (*.f64 e (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1))))))) (*.f64 (/.f64 e (+.f64 e 1)) v))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 v (/.f64 (+.f64 e 1) e))) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e))))) (/.f64 (+.f64 e 1) e)) (/.f64 (*.f64 -1/720 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (*.f64 (/.f64 v (+.f64 e 1)) e)) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (+.f64 e 1)) e) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))))) (+.f64 e 1)) e) (/.f64 -1/720 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e)))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e)))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 e 1/120) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (/.f64 (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (/.f64 (/.f64 (+.f64 e 1) e) -1/2)))) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 e (/.f64 (+.f64 e 1) -1/5040)) (fma.f64 -1/2 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 (/.f64 (*.f64 e 1/120) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (/.f64 (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (/.f64 (/.f64 (+.f64 e 1) e) -1/2))))) (fma.f64 1/24 (*.f64 e (/.f64 (fma.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2 (*.f64 -1/6 (/.f64 e (+.f64 e 1)))) (+.f64 e 1))) (*.f64 -1/720 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))))) (*.f64 e (/.f64 v (+.f64 e 1)))))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (+.f64 1/120 (*.f64 -1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 -1/2 (+.f64 e 1)) (*.f64 e (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1))))))) (fma.f64 (pow.f64 v 7) (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/5040 (/.f64 (*.f64 e -1/720) (+.f64 e 1)))) (*.f64 e (-.f64 (*.f64 -1/24 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1))) (/.f64 (*.f64 -1/2 (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (+.f64 1/120 (*.f64 -1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 -1/2 (+.f64 e 1)) (*.f64 e (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))))))) (+.f64 e 1))))) (*.f64 (/.f64 e (+.f64 e 1)) v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 (*.f64 e (cos.f64 v)) 1)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
Compiled 5183 to 2826 computations (45.5% saved)
16 alts after pruning (15 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 242 | 15 | 257 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 0 | 1 |
| Total | 243 | 16 | 259 |
| Status | Error | Program |
|---|---|---|
| 0.5b | (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v)))) | |
| 0.4b | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e 1 1))) | |
| 28.5b | (/.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) (+.f64 1 (*.f64 e (cos.f64 v)))) | |
| ▶ | 0.8b | (*.f64 (sin.f64 v) e) |
| ✓ | 0.1b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| ▶ | 28.0b | (*.f64 e (/.f64 v (+.f64 e 1))) |
| ▶ | 28.5b | (/.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 28.0b | (/.f64 (*.f64 v e) (+.f64 1 e)) | |
| ▶ | 15.2b | (*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| 22.7b | (/.f64 (pow.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) 2) (+.f64 1 (*.f64 e (cos.f64 v)))) | |
| 1.0b | (/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 3) (+.f64 1 (*.f64 e (cos.f64 v)))) | |
| 28.0b | (*.f64 (/.f64 e (+.f64 e 1)) v) | |
| 0.3b | (/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) | |
| 0.4b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) | |
| 0.6b | (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) | |
| ▶ | 0.2b | (*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
Compiled 429 to 303 computations (29.4% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (cos.f64 v) | |
| ✓ | 0.1b | (expm1.f64 (sin.f64 v)) |
| ✓ | 0.1b | (*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
| ✓ | 0.2b | (log1p.f64 (expm1.f64 (sin.f64 v))) |
Compiled 43 to 16 computations (62.8% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | v | @ | 0 | (*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
| 1.0ms | v | @ | 0 | (expm1.f64 (sin.f64 v)) |
| 1.0ms | v | @ | 0 | (log1p.f64 (expm1.f64 (sin.f64 v))) |
| 1.0ms | v | @ | inf | (expm1.f64 (sin.f64 v)) |
| 1.0ms | e | @ | inf | (*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
| 1× | batch-egg-rewrite |
| 490× | log-prod_binary64 |
| 382× | exp-prod_binary64 |
| 344× | prod-exp_binary64 |
| 297× | pow-prod-down_binary64 |
| 258× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 23 |
| 1 | 200 | 23 |
| 2 | 2443 | 23 |
| 1× | node limit |
| Inputs |
|---|
(log1p.f64 (expm1.f64 (sin.f64 v))) |
(*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
(expm1.f64 (sin.f64 v)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 v))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 v)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 2) (expm1.f64 (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 v))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 v))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 v))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 1 (pow.f64 (expm1.f64 (sin.f64 v)) 2))) (log.f64 (-.f64 1 (expm1.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (cbrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 v) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 v) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 v)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 v)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sin.f64 v))) 2)) (cbrt.f64 (log.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sin.f64 v)))) (sqrt.f64 (log.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 v) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 v) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 v)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 v)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 v) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (sin.f64 v))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 v)) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 v) e)) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) 1) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (cbrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (sqrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 v)) e) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (neg.f64 (sin.f64 v))) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 2)) (cbrt.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))) (sqrt.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 e) 1) (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 (sin.f64 v) e)) (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 e) 1) (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 e) (*.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 e) 1) (*.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1) (log.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) (*.f64 (log.f64 e) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1) (*.f64 (log.f64 e) 1))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (exp.f64 (sin.f64 v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (expm1.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (expm1.f64 (sin.f64 v)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (expm1.f64 (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (sin.f64 v))))) (log.f64 (sqrt.f64 (exp.f64 (expm1.f64 (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (expm1.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (expm1.f64 (sin.f64 v))) (pow.f64 (cbrt.f64 (expm1.f64 (sin.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (expm1.f64 (sin.f64 v))) 2) (cbrt.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (expm1.f64 (sin.f64 v))) (sqrt.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 (sin.f64 v)) 3) 1) (+.f64 (pow.f64 (exp.f64 2) (sin.f64 v)) (+.f64 1 (*.f64 (exp.f64 (sin.f64 v)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (exp.f64 2) (sin.f64 v)) 1) (+.f64 (exp.f64 (sin.f64 v)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (expm1.f64 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (expm1.f64 (sin.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (expm1.f64 (sin.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (expm1.f64 (sin.f64 v)))) 2)) (cbrt.f64 (log.f64 (expm1.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (expm1.f64 (sin.f64 v))))) (sqrt.f64 (log.f64 (expm1.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (expm1.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (expm1.f64 (sin.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (expm1.f64 (sin.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (expm1.f64 (sin.f64 v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (expm1.f64 (sin.f64 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (expm1.f64 (sin.f64 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (expm1.f64 (sin.f64 v))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (exp.f64 (sin.f64 v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 v))) 2) (cbrt.f64 (exp.f64 (sin.f64 v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (exp.f64 (sin.f64 v))) (sqrt.f64 (exp.f64 (sin.f64 v))) -1))))) |
| 1× | egg-herbie |
| 753× | fma-neg_binary64 |
| 577× | fma-def_binary64 |
| 471× | unswap-sqr_binary64 |
| 382× | associate-*l*_binary64 |
| 369× | associate-*r*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 114 | 1157 |
| 1 | 333 | 1106 |
| 2 | 1042 | 1080 |
| 3 | 4747 | 1023 |
| 1× | node limit |
| Inputs |
|---|
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
v |
(+.f64 v (*.f64 1/2 (pow.f64 v 2))) |
(+.f64 v (+.f64 (*.f64 1/2 (pow.f64 v 2)) (*.f64 -1/8 (pow.f64 v 4)))) |
(+.f64 (*.f64 -1/15 (pow.f64 v 5)) (+.f64 v (+.f64 (*.f64 1/2 (pow.f64 v 2)) (*.f64 -1/8 (pow.f64 v 4))))) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
| Outputs |
|---|
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(fma.f64 -1/6 (pow.f64 v 3) v) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5)))) |
(fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) v)) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 -1/5040 (pow.f64 v 7) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) (*.f64 -1/5040 (pow.f64 v 7))))) |
(+.f64 (fma.f64 -1/6 (pow.f64 v 3) v) (fma.f64 1/120 (pow.f64 v 5) (*.f64 -1/5040 (pow.f64 v 7)))) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) e)) |
(-.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(-.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (pow.f64 e 4)) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 e (*.f64 e (cos.f64 v))) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(fma.f64 (neg.f64 (sin.f64 v)) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))) (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e)) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e)) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)) (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))))) |
(-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e)) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e)) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)) (fma.f64 -1 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 2)) e) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))))) |
(-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 4)) (pow.f64 e 3)) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (*.f64 v e) (+.f64 e 1))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (*.f64 (/.f64 v (+.f64 e 1)) e)) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (/.f64 v (/.f64 (+.f64 e 1) e))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (*.f64 (/.f64 e (+.f64 e 1)) v)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (*.f64 v e) (+.f64 e 1))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/24))) (*.f64 (/.f64 v (+.f64 e 1)) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2)) (/.f64 v (/.f64 (+.f64 e 1) e)))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 e 1)))) (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2)) (*.f64 (/.f64 e (+.f64 e 1)) v))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (*.f64 v e) (+.f64 e 1))) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e))))) (/.f64 (+.f64 e 1) e)) (/.f64 (*.f64 -1/720 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 e 1))) (/.f64 (*.f64 -1/2 (*.f64 e e)) (pow.f64 (+.f64 e 1) 2))) (/.f64 (+.f64 e 1) e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (*.f64 (/.f64 v (+.f64 e 1)) e)) (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/24))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 e 1))) (fma.f64 1/24 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 (+.f64 e 1) e)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 e) (+.f64 e 1)) (fma.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/2)) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) 1/24))) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) -1/720))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2)) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 (*.f64 -1/5040 e) (+.f64 e 1)) (fma.f64 -1/2 (*.f64 (/.f64 e (+.f64 e 1)) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) 1/2))) (fma.f64 1/24 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) 1/2))) (*.f64 (*.f64 (/.f64 e (pow.f64 (+.f64 e 1) 2)) e) -1/720)))) (/.f64 v (/.f64 (+.f64 e 1) e))))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 e 1)))) (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2)) (fma.f64 (pow.f64 v 7) (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/5040 (/.f64 (*.f64 e -1/720) (+.f64 e 1)))) (*.f64 e (-.f64 (*.f64 -1/24 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1))) (/.f64 (*.f64 -1/2 (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 e 1)))) (*.f64 (+.f64 (/.f64 -1/6 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))) (/.f64 1/2 (pow.f64 (/.f64 (+.f64 e 1) e) 3))) 1/2))) (+.f64 e 1))))) (*.f64 (/.f64 e (+.f64 e 1)) v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
v |
(+.f64 v (*.f64 1/2 (pow.f64 v 2))) |
(+.f64 v (*.f64 1/2 (*.f64 v v))) |
(fma.f64 1/2 (*.f64 v v) v) |
(fma.f64 v (*.f64 v 1/2) v) |
(+.f64 v (+.f64 (*.f64 1/2 (pow.f64 v 2)) (*.f64 -1/8 (pow.f64 v 4)))) |
(+.f64 v (fma.f64 1/2 (*.f64 v v) (*.f64 -1/8 (pow.f64 v 4)))) |
(fma.f64 v (*.f64 v 1/2) (fma.f64 -1/8 (pow.f64 v 4) v)) |
(+.f64 (*.f64 -1/15 (pow.f64 v 5)) (+.f64 v (+.f64 (*.f64 1/2 (pow.f64 v 2)) (*.f64 -1/8 (pow.f64 v 4))))) |
(fma.f64 -1/15 (pow.f64 v 5) (+.f64 v (fma.f64 1/2 (*.f64 v v) (*.f64 -1/8 (pow.f64 v 4))))) |
(+.f64 (fma.f64 1/2 (*.f64 v v) (*.f64 -1/8 (pow.f64 v 4))) (fma.f64 (pow.f64 v 5) -1/15 v)) |
(fma.f64 (pow.f64 v 5) -1/15 (fma.f64 v (*.f64 v 1/2) (fma.f64 -1/8 (pow.f64 v 4) v))) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
(-.f64 (exp.f64 (sin.f64 v)) 1) |
(expm1.f64 (sin.f64 v)) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 v (+.f64 e 1)) |
| ✓ | 0.0b | (*.f64 e (/.f64 v (+.f64 e 1))) |
Compiled 20 to 12 computations (40% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | v | @ | -inf | (/.f64 v (+.f64 e 1)) |
| 1.0ms | v | @ | 0 | (*.f64 e (/.f64 v (+.f64 e 1))) |
| 1.0ms | v | @ | inf | (*.f64 e (/.f64 v (+.f64 e 1))) |
| 1.0ms | v | @ | 0 | (/.f64 v (+.f64 e 1)) |
| 1.0ms | e | @ | 0 | (*.f64 e (/.f64 v (+.f64 e 1))) |
| 1× | batch-egg-rewrite |
| 824× | pow1_binary64 |
| 767× | log1p-expm1-u_binary64 |
| 767× | expm1-log1p-u_binary64 |
| 766× | add-log-exp_binary64 |
| 750× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 17 |
| 1 | 150 | 17 |
| 2 | 2065 | 17 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 v (+.f64 e 1)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 e (/.f64 (+.f64 e 1) v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e v) (+.f64 e 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 e v)) (+.f64 -1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e v) 1) (+.f64 e 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e v) (pow.f64 (cbrt.f64 (+.f64 e 1)) 2)) (cbrt.f64 (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e v) (sqrt.f64 (+.f64 e 1))) (sqrt.f64 (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 v) e) (+.f64 -1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (neg.f64 v)) (+.f64 -1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (/.f64 v (+.f64 e 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 v (+.f64 e 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (/.f64 v (+.f64 e 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (/.f64 v (+.f64 e 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (/.f64 v (+.f64 e 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (/.f64 v (+.f64 e 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 v (+.f64 e 1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 v (+.f64 e 1)) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (/.f64 v (+.f64 e 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (/.f64 v (+.f64 e 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 e v)) (log1p.f64 e))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 v (/.f64 1 (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 v (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v (+.f64 e 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 v (+.f64 e 1))) (pow.f64 (cbrt.f64 (/.f64 v (+.f64 e 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 v (+.f64 e 1))) 2) (cbrt.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 v (+.f64 e 1))) (sqrt.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 v) (/.f64 1 (+.f64 -1 (neg.f64 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 e 1)) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) (+.f64 e 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 e 1)) 2)) (/.f64 v (cbrt.f64 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 (+.f64 e 1)) 2)) (cbrt.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 (+.f64 e 1)) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 e 1))) (/.f64 v (sqrt.f64 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 (+.f64 e 1))) (/.f64 (cbrt.f64 v) (sqrt.f64 (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v (+.f64 1 (pow.f64 e 3))) (fma.f64 e e (-.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v (fma.f64 e e -1)) (+.f64 e -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 v (+.f64 e 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 v (+.f64 e 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 v (+.f64 e 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 v (+.f64 e 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 e 1) v) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 v (+.f64 -1 (neg.f64 e))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 v (+.f64 e 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 v (+.f64 e 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 v 3) (pow.f64 (+.f64 e 1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 v (+.f64 e 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 v) (log1p.f64 e))))))) |
| 1× | egg-herbie |
| 494× | sub-neg_binary64 |
| 483× | distribute-rgt-neg-in_binary64 |
| 456× | fma-neg_binary64 |
| 401× | distribute-lft-neg-in_binary64 |
| 342× | associate-*l*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 54 | 582 |
| 1 | 156 | 556 |
| 2 | 430 | 539 |
| 3 | 1544 | 496 |
| 4 | 5594 | 496 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 1 e)) |
v |
(+.f64 v (*.f64 -1 (*.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (*.f64 v e)) (*.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (*.f64 v e)) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 3))) (*.f64 v (pow.f64 e 2))))) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 4))) (/.f64 v (pow.f64 e 3))))) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 4))) (/.f64 v (pow.f64 e 3))))) |
| Outputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(fma.f64 v e (neg.f64 (*.f64 v (*.f64 e e)))) |
(-.f64 (*.f64 v e) (*.f64 v (*.f64 e e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (-.f64 (*.f64 v (pow.f64 e 3)) (*.f64 v (*.f64 e e)))) |
(fma.f64 v e (*.f64 v (-.f64 (pow.f64 e 3) (*.f64 e e)))) |
(*.f64 v (-.f64 e (*.f64 e (-.f64 e (*.f64 e e))))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (fma.f64 v (pow.f64 e 3) (neg.f64 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (-.f64 (-.f64 (*.f64 v (pow.f64 e 3)) (*.f64 v (*.f64 e e))) (*.f64 v (pow.f64 e 4)))) |
(+.f64 (*.f64 v (-.f64 e (*.f64 e e))) (*.f64 v (-.f64 (pow.f64 e 3) (pow.f64 e 4)))) |
(*.f64 (-.f64 e (*.f64 e e)) (fma.f64 v (*.f64 e e) v)) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 (-.f64 v (/.f64 v e)) (/.f64 v (*.f64 e e))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(-.f64 v (/.f64 (-.f64 v (/.f64 v e)) e)) |
(+.f64 v (/.f64 (-.f64 (/.f64 v e) v) e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 (-.f64 v (/.f64 v e)) (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3)))) |
(-.f64 (+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) (/.f64 v (pow.f64 e 3))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(-.f64 v (+.f64 (/.f64 v e) (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e)))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 (-.f64 v (/.f64 v e)) (/.f64 v (*.f64 e e))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(-.f64 v (/.f64 (-.f64 v (/.f64 v e)) e)) |
(+.f64 v (/.f64 (-.f64 (/.f64 v e) v) e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 (-.f64 v (/.f64 v e)) (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3)))) |
(-.f64 (+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) (/.f64 v (pow.f64 e 3))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(-.f64 v (+.f64 (/.f64 v e) (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e)))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(*.f64 (/.f64 v (+.f64 e 1)) e) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
(/.f64 v (+.f64 1 e)) |
(/.f64 v (+.f64 e 1)) |
v |
(+.f64 v (*.f64 -1 (*.f64 v e))) |
(+.f64 v (neg.f64 (*.f64 v e))) |
(-.f64 v (*.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (*.f64 v e)) (*.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (*.f64 v e) (*.f64 v (*.f64 e e)))) |
(+.f64 (*.f64 v (*.f64 e e)) (-.f64 v (*.f64 v e))) |
(+.f64 v (*.f64 v (-.f64 (*.f64 e e) e))) |
(+.f64 v (*.f64 e (fma.f64 v e (neg.f64 v)))) |
(+.f64 v (+.f64 (*.f64 -1 (*.f64 v e)) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 3))) (*.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (*.f64 v e) (fma.f64 -1 (*.f64 v (pow.f64 e 3)) (*.f64 v (*.f64 e e))))) |
(+.f64 v (+.f64 (*.f64 v (*.f64 e e)) (*.f64 (neg.f64 v) (+.f64 e (pow.f64 e 3))))) |
(-.f64 v (fma.f64 v e (*.f64 v (-.f64 (pow.f64 e 3) (*.f64 e e))))) |
(*.f64 (+.f64 (*.f64 e e) 1) (-.f64 v (*.f64 v e))) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) |
(-.f64 (/.f64 v e) (/.f64 v (*.f64 e e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) (/.f64 v (pow.f64 e 3))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v e) (-.f64 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (/.f64 (-.f64 v (/.f64 v e)) e)) |
(+.f64 (/.f64 v e) (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e))) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 4))) (/.f64 v (pow.f64 e 3))))) |
(+.f64 (fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) (fma.f64 -1 (/.f64 v (pow.f64 e 4)) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (-.f64 (/.f64 v e) (/.f64 v (*.f64 e e))) (-.f64 (/.f64 v (pow.f64 e 3)) (/.f64 v (pow.f64 e 4)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (-.f64 (/.f64 v e) (/.f64 v (pow.f64 e 4))) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (/.f64 (-.f64 v (/.f64 v e)) e) (/.f64 v (pow.f64 e 4)))) |
(+.f64 (/.f64 v e) (-.f64 (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e)) (/.f64 v (pow.f64 e 4)))) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) |
(-.f64 (/.f64 v e) (/.f64 v (*.f64 e e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) (/.f64 v (pow.f64 e 3))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v e) (-.f64 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (/.f64 (-.f64 v (/.f64 v e)) e)) |
(+.f64 (/.f64 v e) (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e))) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (+.f64 (/.f64 v e) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 4))) (/.f64 v (pow.f64 e 3))))) |
(+.f64 (fma.f64 -1 (/.f64 v (*.f64 e e)) (/.f64 v e)) (fma.f64 -1 (/.f64 v (pow.f64 e 4)) (/.f64 v (pow.f64 e 3)))) |
(+.f64 (-.f64 (/.f64 v e) (/.f64 v (*.f64 e e))) (-.f64 (/.f64 v (pow.f64 e 3)) (/.f64 v (pow.f64 e 4)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (-.f64 (/.f64 v e) (/.f64 v (pow.f64 e 4))) (/.f64 v (*.f64 e e)))) |
(+.f64 (/.f64 v (pow.f64 e 3)) (-.f64 (/.f64 (-.f64 v (/.f64 v e)) e) (/.f64 v (pow.f64 e 4)))) |
(+.f64 (/.f64 v e) (-.f64 (/.f64 (-.f64 (/.f64 v e) v) (*.f64 e e)) (/.f64 v (pow.f64 e 4)))) |
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (sin.f64 v) | |
| ✓ | 0.1b | (*.f64 (sin.f64 v) e) |
Compiled 10 to 4 computations (60% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | v | @ | 0 | (*.f64 (sin.f64 v) e) |
| 0.0ms | e | @ | inf | (*.f64 (sin.f64 v) e) |
| 0.0ms | v | @ | inf | (*.f64 (sin.f64 v) e) |
| 0.0ms | e | @ | -inf | (*.f64 (sin.f64 v) e) |
| 0.0ms | v | @ | -inf | (*.f64 (sin.f64 v) e) |
| 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 (sin.f64 v) e) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 v) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 v) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 v)) e))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 v) e))))))) |
| 1× | egg-herbie |
| 1155× | fma-def_binary64 |
| 690× | unswap-sqr_binary64 |
| 654× | sqr-pow_binary64 |
| 596× | cube-prod_binary64 |
| 433× | fabs-mul_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 25 | 76 |
| 1 | 70 | 73 |
| 2 | 191 | 62 |
| 3 | 582 | 60 |
| 4 | 1560 | 58 |
| 5 | 2413 | 58 |
| 6 | 2620 | 58 |
| 7 | 3068 | 58 |
| 8 | 3947 | 58 |
| 9 | 4090 | 58 |
| 10 | 4317 | 58 |
| 11 | 4799 | 58 |
| 12 | 5395 | 58 |
| 13 | 6268 | 58 |
| 14 | 7379 | 58 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
| Outputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 v e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 e (+.f64 v (*.f64 1/120 (pow.f64 v 5))))) |
(*.f64 e (+.f64 (fma.f64 -1/6 (pow.f64 v 3) v) (*.f64 1/120 (pow.f64 v 5)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) v))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (fma.f64 v e (*.f64 -1/5040 (*.f64 e (pow.f64 v 7)))))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 e (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) v)))) |
(*.f64 e (+.f64 (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5))) (fma.f64 -1/5040 (pow.f64 v 7) v))) |
(*.f64 e (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/5040 (pow.f64 v 7) v)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/5040 (pow.f64 v 7) v)))) |
(*.f64 e (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/5040 (pow.f64 v 7) (fma.f64 -1/6 (pow.f64 v 3) v)))) |
(*.f64 e (fma.f64 -1/5040 (pow.f64 v 7) (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) v)))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| ✓ | 0.1b | (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
| 0.1b | (*.f64 e (cos.f64 v)) | |
| ✓ | 6.1b | (*.f64 (pow.f64 v 3) e) |
Compiled 66 to 35 computations (47% saved)
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | e | @ | 0 | (*.f64 (pow.f64 v 3) e) |
| 1.0ms | v | @ | 0 | (*.f64 (pow.f64 v 3) e) |
| 1.0ms | e | @ | inf | (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
| 1.0ms | v | @ | inf | (*.f64 (pow.f64 v 3) e) |
| 1.0ms | e | @ | inf | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| 1× | batch-egg-rewrite |
| 525× | log-prod_binary64 |
| 381× | exp-prod_binary64 |
| 381× | fma-def_binary64 |
| 359× | pow-prod-down_binary64 |
| 267× | pow2_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 10 | 31 |
| 1 | 221 | 30 |
| 2 | 2766 | 28 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (pow.f64 v 3) e) |
(*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 v 3) e))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (pow.f64 v 3))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (pow.f64 v 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (pow.f64 v 3)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (pow.f64 v 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 v 3) e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 v 3) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 v (cbrt.f64 e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 e) (pow.f64 v 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (pow.f64 v 3) e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 v e)) v) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 v (sqrt.f64 (*.f64 v e))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (pow.f64 v 3) e))) 2)) (cbrt.f64 (log.f64 (*.f64 (pow.f64 v 3) e))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (pow.f64 v 3) e)))) (sqrt.f64 (log.f64 (*.f64 (pow.f64 v 3) e))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (pow.f64 v 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 v 3) e))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 v 3) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 v 3) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 v 3) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 v 3) e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 v (cbrt.f64 e))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 e) (pow.f64 v 3/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (pow.f64 v 3) e)) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) 2)) (cbrt.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))) (sqrt.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) 3) 1/3)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v))) (/.f64 (pow.f64 (*.f64 v e) 2) (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (+.f64 v (*.f64 (pow.f64 v 3) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) (pow.f64 (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 2) (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) (sqrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3)) (/.f64 1 (fma.f64 (*.f64 v e) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (pow.f64 (*.f64 v e) 2)) (/.f64 1 (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 v e) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36)) (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v)) (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (pow.f64 (*.f64 v e) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3)) (fma.f64 (*.f64 v e) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3)) (+.f64 (pow.f64 (*.f64 v e) 2) (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 v 3) e) (*.f64 v e))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (pow.f64 (*.f64 v e) 2)) (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3))) (neg.f64 (fma.f64 (*.f64 v e) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (pow.f64 (*.f64 v e) 2))) (neg.f64 (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 v e) 2) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36)) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 v e) (-.f64 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36)) (fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 9) -1/216 (pow.f64 (*.f64 v e) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 e (-.f64 (*.f64 (pow.f64 v 3) -1/6) v)) (-.f64 (*.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 6) 1/36) (pow.f64 (*.f64 v e) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))) 2)) (cbrt.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))) (sqrt.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (fma.f64 (pow.f64 v 3) -1/6 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) (pow.f64 (exp.f64 e) v)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (+.f64 1 (expm1.f64 (*.f64 v e)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))) (+.f64 1 (expm1.f64 (*.f64 v e)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 v e))) (exp.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 e) v) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 v e))) (+.f64 1 (expm1.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 e (fma.f64 (pow.f64 v 3) -1/6 v))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 v e (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 v 3) (*.f64 e -1/6) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 e v (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 e (*.f64 (pow.f64 v 3) -1/6) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 v 3) e) -1/6 (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/6 (*.f64 (pow.f64 v 3) e) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6) 1 (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 v e) 1 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 v e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6)) (pow.f64 (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6)) 2) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6)) 2) (*.f64 (*.f64 v (cbrt.f64 e)) (cbrt.f64 -1/6)) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 e e)) (*.f64 v (cbrt.f64 e)) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 v v)) (*.f64 (cbrt.f64 v) e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 v e)) (pow.f64 (cbrt.f64 (*.f64 v e)) 2) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 v e)) 2) (cbrt.f64 (*.f64 v e)) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 v (cbrt.f64 e)) 2) (*.f64 (*.f64 v (cbrt.f64 e)) -1/6) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (sqrt.f64 (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 e) (*.f64 (sqrt.f64 e) v) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 v e)) (sqrt.f64 (*.f64 v e)) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 e) (pow.f64 v 3/2)) (*.f64 (*.f64 (sqrt.f64 e) (pow.f64 v 3/2)) -1/6) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 v 3) -1/6) e (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 e) (pow.f64 v 3) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (pow.f64 (*.f64 v (cbrt.f64 e)) 2)) (*.f64 v (cbrt.f64 e)) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 e) (pow.f64 v 3/2))) (*.f64 (sqrt.f64 e) (pow.f64 v 3/2)) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 v 3) -1/6) 1) e (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 v 3) -1/6) (cbrt.f64 (*.f64 e e))) (cbrt.f64 e) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (pow.f64 v 3) -1/6) (sqrt.f64 e)) (sqrt.f64 e) (*.f64 v e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 v (cbrt.f64 (*.f64 e e))) (cbrt.f64 e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 v (sqrt.f64 e)) (sqrt.f64 e) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 e (cbrt.f64 (*.f64 v v))) (cbrt.f64 v) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 e (sqrt.f64 v)) (sqrt.f64 v) (*.f64 (*.f64 (pow.f64 v 3) e) -1/6)))))) |
| 1× | egg-herbie |
| 1444× | fma-def_binary64 |
| 1090× | fma-neg_binary64 |
| 480× | unswap-sqr_binary64 |
| 441× | distribute-rgt-neg-in_binary64 |
| 297× | unsub-neg_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 19 | 180 |
| 1 | 48 | 156 |
| 2 | 135 | 156 |
| 3 | 451 | 156 |
| 4 | 1354 | 156 |
| 5 | 2298 | 156 |
| 6 | 4205 | 156 |
| 7 | 5306 | 156 |
| 8 | 6654 | 156 |
| 9 | 6971 | 156 |
| 10 | 7140 | 156 |
| 11 | 7358 | 156 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
(*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
| Outputs |
|---|
(*.f64 v e) |
(*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
(*.f64 -1/6 (*.f64 e (pow.f64 v 3))) |
(*.f64 e (*.f64 -1/6 (pow.f64 v 3))) |
(*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) |
(*.f64 -1/6 (*.f64 e (pow.f64 v 3))) |
(*.f64 e (*.f64 -1/6 (pow.f64 v 3))) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (pow.f64 v 3)) (*.f64 -1 v)) e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (cos.f64 v) | |
| ✓ | 0.1b | (*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| ✓ | 0.4b | (+.f64 1 (sin.f64 v)) |
| ✓ | 2.7b | (-.f64 (+.f64 1 (sin.f64 v)) 1) |
Compiled 50 to 28 computations (44% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | v | @ | inf | (+.f64 1 (sin.f64 v)) |
| 1.0ms | v | @ | 0 | (*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| 0.0ms | v | @ | 0 | (-.f64 (+.f64 1 (sin.f64 v)) 1) |
| 0.0ms | e | @ | inf | (*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| 0.0ms | e | @ | -inf | (*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| 1× | batch-egg-rewrite |
| 555× | log-prod_binary64 |
| 302× | prod-diff_binary64 |
| 300× | fma-def_binary64 |
| 298× | pow2_binary64 |
| 208× | pow1/3_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 36 |
| 1 | 243 | 24 |
| 2 | 3550 | 24 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 (+.f64 1 (sin.f64 v)) 1) |
(+.f64 1 (sin.f64 v)) |
(*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (+.f64 (sin.f64 v) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (+.f64 (sin.f64 v) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 (sin.f64 v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 v) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 1 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 v) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sin.f64 v))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 v)))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (cbrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (sin.f64 v) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2)) (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (sin.f64 v) 2) (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v)))) (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v)))) (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (-.f64 1 (*.f64 (+.f64 1 (sin.f64 v)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v)))) (+.f64 (sin.f64 v) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v))))) (neg.f64 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v))))) (neg.f64 (+.f64 (sin.f64 v) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (+.f64 (sin.f64 v) -1) 3)) (+.f64 1 (-.f64 (pow.f64 (+.f64 (sin.f64 v) -1) 2) (+.f64 (sin.f64 v) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (+.f64 (sin.f64 v) -1) 2)) (-.f64 1 (+.f64 (sin.f64 v) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 v) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 v)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 v)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 v) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2)) (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (sin.f64 v) 2) (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 v) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 v) 3))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 v)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (sin.f64 v)) (hypot.f64 (sin.f64 v) (sqrt.f64 (neg.f64 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (*.f64 (log1p.f64 (sin.f64 v)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 v)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 1 (sin.f64 v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 v) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (sin.f64 v) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (sin.f64 v)) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 v) 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2) (cbrt.f64 (+.f64 1 (sin.f64 v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2) (*.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (sin.f64 v)) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (cbrt.f64 (sin.f64 v)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) (sqrt.f64 (+.f64 1 (sin.f64 v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) (*.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 (sin.f64 v)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3)) (/.f64 1 (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (sin.f64 v) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 v) 2) (/.f64 1 (-.f64 1 (sin.f64 v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 v) -1)) 2) (cbrt.f64 (+.f64 (sin.f64 v) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (sin.f64 v) -1)) (sqrt.f64 (+.f64 (sin.f64 v) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 v)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (sin.f64 v)) 1) (-.f64 (sqrt.f64 (sin.f64 v)) 1) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sin.f64 v) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (-.f64 1 (sin.f64 v))) (/.f64 (pow.f64 (sin.f64 v) 2) (-.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2) (cbrt.f64 (+.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 2) (*.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) (sqrt.f64 (+.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) (*.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3)) (/.f64 1 (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 v) 2) (/.f64 1 (-.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1) (+.f64 1 (pow.f64 (sin.f64 v) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 1 (sin.f64 v)) (pow.f64 (cos.f64 v) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3)) (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3)) (+.f64 (pow.f64 (sin.f64 v) 2) (-.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cos.f64 v) 2) (-.f64 1 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3))) (neg.f64 (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (cos.f64 v) 2)) (+.f64 (sin.f64 v) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 (cos.f64 v) 2)) (neg.f64 (-.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 (pow.f64 (sin.f64 v) 3)) 1) (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (cos.f64 v) 2) 1) (-.f64 1 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 1 (sin.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 v) (+.f64 (sin.f64 v) -1) 1) (+.f64 1 (pow.f64 (sin.f64 v) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 1 (sin.f64 v)) (pow.f64 (cos.f64 v) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 1 (sin.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (+.f64 (sin.f64 v) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 1 (sin.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (sin.f64 v)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 v) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (sin.f64 v) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 v) 1 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (sin.f64 v)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (cbrt.f64 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 (sin.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (pow.f64 (+.f64 1 (sin.f64 v)) 2) (+.f64 (sin.f64 v) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 v)))) (/.f64 1 (+.f64 (sin.f64 v) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sin.f64 v) 2) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 v) 2)) 2) (cbrt.f64 (+.f64 (sin.f64 v) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (sin.f64 v) 2)) (sqrt.f64 (+.f64 (sin.f64 v) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 1 (sin.f64 v))) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 v)))) 1))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 v) e)) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) 1) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2)) (cbrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 v) e) (sqrt.f64 (fma.f64 e (cos.f64 v) 1))) (sqrt.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 v)) e) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (neg.f64 (sin.f64 v))) (neg.f64 (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3) (pow.f64 e 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 e 3) (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))) 1)))))) |
| 1× | egg-herbie |
| 753× | fma-neg_binary64 |
| 558× | fma-def_binary64 |
| 445× | unswap-sqr_binary64 |
| 362× | associate-*l*_binary64 |
| 346× | associate-*r*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 106 | 1151 |
| 1 | 316 | 1100 |
| 2 | 997 | 1076 |
| 3 | 4574 | 1019 |
| 1× | node limit |
| Inputs |
|---|
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
1 |
(+.f64 v 1) |
(+.f64 v (+.f64 1 (*.f64 -1/6 (pow.f64 v 3)))) |
(+.f64 v (+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
| Outputs |
|---|
v |
(+.f64 v (*.f64 -1/6 (pow.f64 v 3))) |
(fma.f64 -1/6 (pow.f64 v 3) v) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5)))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5)))) |
(fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) v)) |
(+.f64 v (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 -1/5040 (pow.f64 v 7) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) (*.f64 -1/5040 (pow.f64 v 7))))) |
(+.f64 (fma.f64 -1/6 (pow.f64 v 3) v) (fma.f64 1/120 (pow.f64 v 5) (*.f64 -1/5040 (pow.f64 v 7)))) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
(sin.f64 v) |
1 |
(+.f64 v 1) |
(+.f64 v (+.f64 1 (*.f64 -1/6 (pow.f64 v 3)))) |
(+.f64 (+.f64 v 1) (*.f64 -1/6 (pow.f64 v 3))) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) 1)) |
(fma.f64 -1/6 (pow.f64 v 3) (+.f64 v 1)) |
(+.f64 v (+.f64 1 (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (*.f64 1/120 (pow.f64 v 5))))) |
(+.f64 v (+.f64 (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5))) 1)) |
(+.f64 v (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) 1))) |
(+.f64 (fma.f64 -1/6 (pow.f64 v 3) v) (fma.f64 1/120 (pow.f64 v 5) 1)) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(+.f64 (sin.f64 v) 1) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) e)) |
(fma.f64 (sin.f64 v) e (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (neg.f64 (*.f64 e e)))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))) (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (neg.f64 (*.f64 e e)))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 (cos.f64 v) (*.f64 e e)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (sin.f64 v) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3))))) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 e 3)) (pow.f64 (cos.f64 v) 4))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3))))) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 e 3)) (pow.f64 (cos.f64 v) 4))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 v (+.f64 1 e)) e) |
(*.f64 e (/.f64 v (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (*.f64 (/.f64 v (+.f64 1 e)) e)) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (*.f64 e (/.f64 v (+.f64 1 e)))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (*.f64 e (/.f64 v (+.f64 1 e)))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (*.f64 v e) (+.f64 1 e))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (+.f64 1 e) e))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 -1/2 (/.f64 e (/.f64 (+.f64 1 e) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))))) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) 1/24))) (*.f64 (/.f64 v (+.f64 1 e)) e))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 -1/24 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (*.f64 (*.f64 e (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (+.f64 1 e))) 1/2)) (*.f64 e (/.f64 v (+.f64 1 e))))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 1 e)))) (/.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (/.f64 (/.f64 (+.f64 1 e) e) -1/2))) (*.f64 e (/.f64 v (+.f64 1 e))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (*.f64 v e) (+.f64 1 e))) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (fma.f64 1/24 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (+.f64 1 e) e)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (+.f64 1 e) e))))) (/.f64 (+.f64 1 e) e)) (/.f64 (*.f64 -1/720 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)))) (/.f64 (+.f64 1 e) e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (*.f64 (/.f64 v (+.f64 1 e)) e)) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 -1/2 (/.f64 e (/.f64 (+.f64 1 e) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))))) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) 1/24))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (fma.f64 1/24 (/.f64 e (/.f64 (+.f64 1 e) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))))) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (fma.f64 -1/2 (/.f64 e (/.f64 (+.f64 1 e) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 1/2 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))))) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) 1/24))) (/.f64 (+.f64 1 e) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) -1/720))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 -1/24 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (*.f64 (*.f64 e (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (+.f64 1 e))) 1/2)) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 (*.f64 -1/5040 e) (+.f64 1 e)) (fma.f64 -1/2 (*.f64 (/.f64 e (+.f64 1 e)) (+.f64 (fma.f64 1/120 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 -1/24 (*.f64 e e)) (pow.f64 (+.f64 1 e) 2))) (*.f64 (*.f64 e (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (+.f64 1 e))) 1/2))) (fma.f64 1/24 (*.f64 e (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 1 e)) (/.f64 (*.f64 (*.f64 e e) 1/2) (pow.f64 (+.f64 1 e) 2))) (+.f64 1 e))) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 1 e) 2)) -1/720)))) (*.f64 e (/.f64 v (+.f64 1 e)))))) |
(fma.f64 (/.f64 v (+.f64 1 e)) e (fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/5040 (/.f64 (*.f64 e -1/720) (+.f64 1 e)))) (*.f64 e (+.f64 (/.f64 (*.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) 1/24) (+.f64 1 e)) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 1 e)))) (/.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (/.f64 (/.f64 (+.f64 1 e) e) -1/2))) (+.f64 1 e)))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 1/120 (/.f64 (*.f64 e 1/24) (+.f64 1 e)))) (/.f64 (*.f64 (/.f64 e (+.f64 1 e)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 1 e)))) (/.f64 (/.f64 (+.f64 1 e) e) -1/2))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
Compiled 12913 to 7311 computations (43.4% saved)
27 alts after pruning (25 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 652 | 22 | 674 |
| Fresh | 7 | 3 | 10 |
| Picked | 1 | 0 | 1 |
| Done | 3 | 2 | 5 |
| Total | 663 | 27 | 690 |
| Status | Error | Program |
|---|---|---|
| 15.3b | (*.f64 e (/.f64 (log.f64 (+.f64 1 (expm1.f64 (sin.f64 v)))) (fma.f64 e (cos.f64 v) 1))) | |
| 15.5b | (*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) | |
| 61.1b | v | |
| ▶ | 28.9b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| 0.4b | (*.f64 e (/.f64 (sin.f64 v) (fma.f64 e 1 1))) | |
| ▶ | 28.4b | (*.f64 v e) |
| 0.4b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) | |
| 28.2b | (*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) | |
| 0.5b | (/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e))) | |
| ▶ | 0.3b | (/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
| 28.3b | (*.f64 v (-.f64 e (*.f64 e e))) | |
| 0.3b | (/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) | |
| ▶ | 28.4b | (/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
| ▶ | 23.2b | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| 28.1b | (/.f64 e (/.f64 (+.f64 e 1) v)) | |
| 1.7b | (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 3) | |
| ✓ | 0.8b | (*.f64 (sin.f64 v) e) |
| 30.5b | (*.f64 (pow.f64 (sqrt.f64 (sin.f64 v)) 2) e) | |
| 63.0b | (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) | |
| 15.3b | (*.f64 e (/.f64 (+.f64 (+.f64 (sin.f64 v) -1) 1) (fma.f64 e (cos.f64 v) 1))) | |
| 62.6b | (-.f64 v (/.f64 v e)) | |
| 0.9b | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) | |
| 29.0b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) | |
| 42.8b | (*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) | |
| 42.9b | (-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) | |
| ✓ | 0.1b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 28.0b | (/.f64 (*.f64 v e) (+.f64 1 e)) |
Compiled 562 to 395 computations (29.7% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (sin.f64 v) | |
| ✓ | 0.0b | (/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| 0.0b | (cos.f64 v) | |
| ✓ | 0.3b | (/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
Compiled 31 to 14 computations (54.8% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | e | @ | -inf | (/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| 1.0ms | v | @ | 0 | (/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
| 1.0ms | v | @ | inf | (/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| 1.0ms | v | @ | -inf | (/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| 1.0ms | e | @ | inf | (/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| 1× | batch-egg-rewrite |
| 497× | log-prod_binary64 |
| 396× | exp-prod_binary64 |
| 306× | prod-exp_binary64 |
| 266× | pow-prod-down_binary64 |
| 248× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 25 |
| 1 | 184 | 25 |
| 2 | 2479 | 25 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) (/.f64 e (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) (cbrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -2)) (cbrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) (sqrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (*.f64 (sqrt.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 v)) (/.f64 1 (/.f64 (neg.f64 (fma.f64 e (cos.f64 v) 1)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) e)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 v)) (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 v)) 1) (/.f64 (sqrt.f64 (sin.f64 v)) (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (fma.f64 e (cos.f64 v) 1)) (/.f64 (sin.f64 v) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (fma.f64 e (cos.f64 v) 1)) (/.f64 (cbrt.f64 (sin.f64 v)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) (/.f64 (sqrt.f64 (sin.f64 v)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) -2) (/.f64 (sin.f64 v) (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 2)) (cbrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 2)) (/.f64 (sqrt.f64 (sin.f64 v)) (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) -1/2) (/.f64 (sin.f64 v) (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) (/.f64 (cbrt.f64 (sin.f64 v)) (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) 1) (/.f64 e (fma.f64 e (cos.f64 v) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (neg.f64 (fma.f64 e (cos.f64 v) 1))) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) 1) e)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)) (sqrt.f64 e)) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 v) 3) (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))) 2)) (cbrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))) (sqrt.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 v) (/.f64 (neg.f64 (fma.f64 e (cos.f64 v) 1)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 v)) (/.f64 e (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 v) 3) (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 v) e) (fma.f64 e (cos.f64 v) 1))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 v)) 1) (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (sin.f64 v)) (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (sin.f64 v)) 1) (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (sin.f64 v)) 1) (log.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 e) 1) (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1))) (*.f64 (log.f64 (sin.f64 v)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) (*.f64 (log.f64 e) 1))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 e (cos.f64 v) 1) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) (pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 2) (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) (*.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) (*.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 e (cos.f64 v) 1)) (/.f64 1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 e) (fma.f64 e (cos.f64 v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) 1) (/.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) 1) (/.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 (fma.f64 e (cos.f64 v) 1) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 (fma.f64 e (cos.f64 v) 1)) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 e -1/2) (/.f64 (fma.f64 e (cos.f64 v) 1) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 (fma.f64 e (cos.f64 v) 1)) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 e (cos.f64 v) 1) 3) (pow.f64 e 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 2)) (cbrt.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))) (sqrt.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 e (cos.f64 v) 1) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (fma.f64 e (cos.f64 v) 1) e)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1) (log.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 (*.f64 e (cos.f64 v))) (*.f64 (log.f64 e) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1) (*.f64 (log.f64 e) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1) (neg.f64 (log.f64 e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (neg.f64 (log.f64 e)) (*.f64 (log1p.f64 (*.f64 e (cos.f64 v))) 1))))))) |
| 1× | egg-herbie |
| 753× | fma-neg_binary64 |
| 503× | unswap-sqr_binary64 |
| 495× | fma-def_binary64 |
| 394× | associate-*l*_binary64 |
| 376× | associate-*r*_binary64 |
Useful iterations: 3 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 112 | 1252 |
| 1 | 324 | 1187 |
| 2 | 1025 | 1165 |
| 3 | 4739 | 1108 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 1 e) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(cos.f64 v) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(cos.f64 v) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(/.f64 (+.f64 1 e) e) |
(+.f64 1 (+.f64 (/.f64 1 e) (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 1 (+.f64 (/.f64 1 e) (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2))))) |
(+.f64 1 (+.f64 (/.f64 1 e) (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6)))))) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
| Outputs |
|---|
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (/.f64 (*.f64 v e) (+.f64 1 e))) |
(fma.f64 (pow.f64 v 3) (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (*.f64 v e) (+.f64 e 1))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (/.f64 (*.f64 v e) (+.f64 e 1))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (/.f64 e (/.f64 (+.f64 e 1) v))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (*.f64 (/.f64 e (+.f64 e 1)) v)) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (*.f64 v e) (+.f64 e 1))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))))) (/.f64 (*.f64 v e) (+.f64 e 1)))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2))) 1/2)) (/.f64 e (/.f64 (+.f64 e 1) v)))) |
(fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (*.f64 1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1)) (*.f64 e -1/2))) (*.f64 (/.f64 e (+.f64 e 1)) v))) |
(+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))) (+.f64 (/.f64 (*.f64 v e) (+.f64 1 e)) (+.f64 (*.f64 (pow.f64 v 7) (-.f64 (*.f64 -1/5040 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))) e) (+.f64 1 e))) (*.f64 -1/720 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 e (+.f64 1 e))) (+.f64 (*.f64 1/24 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 e (+.f64 1 e))) (*.f64 -1/2 (/.f64 (pow.f64 e 2) (pow.f64 (+.f64 1 e) 2)))) e) (+.f64 1 e))))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (*.f64 v e) (+.f64 e 1))) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 (*.f64 -1/5040 e) (+.f64 e 1)) (fma.f64 1/24 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e))))) (/.f64 (+.f64 e 1) e)) (*.f64 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) -1/720)))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 1/24 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 (*.f64 -1/6 e) (+.f64 e 1)) (*.f64 1/2 (/.f64 (*.f64 e e) (pow.f64 (+.f64 e 1) 2)))) (/.f64 (+.f64 e 1) e)))))))) |
(+.f64 (fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (/.f64 (*.f64 v e) (+.f64 e 1))) (fma.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) -1/5040) (fma.f64 1/24 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (+.f64 e 1)) e) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) 1/120) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (+.f64 e 1)) e) (/.f64 1/24 (/.f64 (pow.f64 (+.f64 e 1) 2) (*.f64 e e))))) (+.f64 e 1)) e) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) -1/720))))))) |
(fma.f64 (pow.f64 v 3) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2)) (fma.f64 (pow.f64 v 5) (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2))) 1/2)) (fma.f64 (pow.f64 v 7) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) -1/5040) (fma.f64 -1/2 (*.f64 (/.f64 e (+.f64 e 1)) (+.f64 (fma.f64 (/.f64 e (+.f64 e 1)) 1/120 (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) -1/24)) (*.f64 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2))) 1/2))) (fma.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) -1/720 (*.f64 1/24 (*.f64 (/.f64 e (+.f64 e 1)) (fma.f64 -1/6 (/.f64 e (+.f64 e 1)) (*.f64 (/.f64 e (/.f64 (pow.f64 (+.f64 e 1) 2) e)) 1/2))))))) (/.f64 e (/.f64 (+.f64 e 1) v))))) |
(fma.f64 (/.f64 v (+.f64 e 1)) e (fma.f64 (pow.f64 v 3) (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (fma.f64 (pow.f64 v 7) (+.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/5040 (/.f64 (*.f64 e -1/720) (+.f64 e 1)))) (*.f64 e (-.f64 (*.f64 -1/24 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1))) (*.f64 -1/2 (/.f64 (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (*.f64 1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1)) (*.f64 e -1/2))) (+.f64 e 1)))))) (*.f64 (pow.f64 v 5) (-.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 1/120 (*.f64 1/24 (/.f64 e (+.f64 e 1))))) (*.f64 (/.f64 (*.f64 (/.f64 e (+.f64 e 1)) (-.f64 -1/6 (/.f64 (*.f64 e -1/2) (+.f64 e 1)))) (+.f64 e 1)) (*.f64 e -1/2))))))) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(/.f64 (*.f64 (sin.f64 v) e) (+.f64 1 (*.f64 (cos.f64 v) e))) |
(/.f64 (sin.f64 v) (/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 (*.f64 e (sin.f64 v)) (fma.f64 e (cos.f64 v) 1)) |
(*.f64 (/.f64 e (fma.f64 e (cos.f64 v) 1)) (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (*.f64 e (sin.f64 v))) |
(-.f64 (*.f64 e (sin.f64 v)) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(-.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (*.f64 (sin.f64 v) (cos.f64 v)) (*.f64 e e)) (fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 e (*.f64 e (cos.f64 v))) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (sin.f64 v) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (+.f64 (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (-.f64 (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3)))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (*.f64 e e) (pow.f64 (cos.f64 v) 3))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (+.f64 (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 e (*.f64 e (pow.f64 (cos.f64 v) 3)))) (-.f64 (*.f64 (+.f64 (/.f64 -1 (*.f64 e (cos.f64 v))) 1) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(/.f64 1 e) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(cos.f64 v) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(cos.f64 v) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(/.f64 (+.f64 1 e) e) |
(/.f64 (+.f64 e 1) e) |
(+.f64 1 (+.f64 (/.f64 1 e) (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (*.f64 -1/2 (*.f64 v v))) |
(+.f64 1 (fma.f64 -1/2 (*.f64 v v) (/.f64 1 e))) |
(+.f64 (/.f64 1 e) (fma.f64 -1/2 (*.f64 v v) 1)) |
(+.f64 1 (+.f64 (/.f64 1 e) (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2))))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/2 (*.f64 v v)))) |
(+.f64 1 (+.f64 (/.f64 1 e) (fma.f64 -1/2 (*.f64 v v) (*.f64 1/24 (pow.f64 v 4))))) |
(+.f64 1 (fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) (/.f64 1 e)))) |
(+.f64 1 (+.f64 (/.f64 1 e) (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6)))))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (fma.f64 1/24 (pow.f64 v 4) (fma.f64 -1/2 (*.f64 v v) (*.f64 -1/720 (pow.f64 v 6))))) |
(+.f64 1 (+.f64 (/.f64 1 e) (fma.f64 1/24 (pow.f64 v 4) (fma.f64 -1/2 (*.f64 v v) (*.f64 -1/720 (pow.f64 v 6)))))) |
(+.f64 1 (+.f64 (/.f64 1 e) (fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/720 (pow.f64 v 6)))))) |
(+.f64 1 (+.f64 (fma.f64 1/24 (pow.f64 v 4) (*.f64 v (*.f64 v -1/2))) (fma.f64 -1/720 (pow.f64 v 6) (/.f64 1 e)))) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
(/.f64 (+.f64 1 (*.f64 (cos.f64 v) e)) e) |
(/.f64 (+.f64 1 (*.f64 e (cos.f64 v))) e) |
(/.f64 (fma.f64 e (cos.f64 v) 1) e) |
Compiled 7 to 3 computations (57.1% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.2b | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| ✓ | 0.6b | (/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
Compiled 27 to 14 computations (48.1% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | e | @ | -inf | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| 0.0ms | v | @ | 0 | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| 0.0ms | v | @ | -inf | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| 0.0ms | e | @ | 0 | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| 0.0ms | e | @ | inf | (/.f64 (+.f64 e 1) (*.f64 e v)) |
| 1× | batch-egg-rewrite |
| 991× | pow1_binary64 |
| 925× | log1p-expm1-u_binary64 |
| 925× | expm1-log1p-u_binary64 |
| 924× | add-log-exp_binary64 |
| 91× | add-sqr-sqrt_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 23 |
| 1 | 178 | 20 |
| 2 | 2560 | 20 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(/.f64 (+.f64 e 1) (*.f64 e v)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 e (/.f64 (+.f64 1 e) v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 e (/.f64 (+.f64 1 e) v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 e v) (/.f64 1 (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) (pow.f64 (cbrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) 2) (cbrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) (sqrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (+.f64 -1 (neg.f64 e)) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 e)) (*.f64 e v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 e)) (pow.f64 (/.f64 1 (*.f64 e v)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2) -1) (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -1) (pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e 1) (/.f64 v (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v 1) (/.f64 e (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e v)) 2) 1) (/.f64 (cbrt.f64 (*.f64 e v)) (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 e v)) 1) (/.f64 (sqrt.f64 (*.f64 e v)) (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2)) (/.f64 (*.f64 e v) (cbrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (pow.f64 (cbrt.f64 (+.f64 1 e)) 2)) (/.f64 v (cbrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v (pow.f64 (cbrt.f64 (+.f64 1 e)) 2)) (/.f64 e (cbrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e v)) 2) (pow.f64 (cbrt.f64 (+.f64 1 e)) 2)) (/.f64 (cbrt.f64 (*.f64 e v)) (cbrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 e v)) (pow.f64 (cbrt.f64 (+.f64 1 e)) 2)) (/.f64 (sqrt.f64 (*.f64 e v)) (cbrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 1 e))) (/.f64 (*.f64 e v) (sqrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (sqrt.f64 (+.f64 1 e))) (/.f64 v (sqrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 v (sqrt.f64 (+.f64 1 e))) (/.f64 e (sqrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 e v)) 2) (sqrt.f64 (+.f64 1 e))) (/.f64 (cbrt.f64 (*.f64 e v)) (sqrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 e v)) (sqrt.f64 (+.f64 1 e))) (/.f64 (sqrt.f64 (*.f64 e v)) (sqrt.f64 (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 -1 (neg.f64 e))) (*.f64 e (neg.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 e v) (+.f64 1 (pow.f64 e 3))) (fma.f64 e e (-.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 e v) (fma.f64 e e -1)) (+.f64 e -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 e)) 1) (*.f64 e v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 e)) e) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 e)) v) e)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 e)) (pow.f64 (cbrt.f64 (*.f64 e v)) 2)) (cbrt.f64 (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (+.f64 1 e)) (sqrt.f64 (*.f64 e v))) (sqrt.f64 (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 e (/.f64 (+.f64 1 e) v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 e (/.f64 (+.f64 1 e) v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 e (/.f64 (+.f64 1 e) v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 e v) 3) (pow.f64 (+.f64 1 e) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 e (/.f64 (+.f64 1 e) v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 e (/.f64 (+.f64 1 e) v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 e v)) (log1p.f64 e))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 1 e) (*.f64 e v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 1 e) (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 e) (/.f64 1 (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2) (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (*.f64 (cbrt.f64 (+.f64 1 e)) (/.f64 1 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 e)) (*.f64 (sqrt.f64 (+.f64 1 e)) (/.f64 1 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (neg.f64 e)) (/.f64 1 (*.f64 e (neg.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 e v)) (+.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) 1) (/.f64 (cbrt.f64 (+.f64 1 e)) (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) 1) (/.f64 (sqrt.f64 (+.f64 1 e)) (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) e) (/.f64 (sqrt.f64 (+.f64 1 e)) v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 e) (/.f64 (+.f64 1 e) v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) e) (/.f64 (cbrt.f64 (+.f64 1 e)) v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) v) (/.f64 (sqrt.f64 (+.f64 1 e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 v) (/.f64 (+.f64 1 e) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) v) (/.f64 (cbrt.f64 (+.f64 1 e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 e v)) 2)) (/.f64 (+.f64 1 e) (cbrt.f64 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (pow.f64 (cbrt.f64 (*.f64 e v)) 2)) (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) (pow.f64 (cbrt.f64 (*.f64 e v)) 2)) (/.f64 (sqrt.f64 (+.f64 1 e)) (cbrt.f64 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 e v))) (/.f64 (+.f64 1 e) (sqrt.f64 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (sqrt.f64 (*.f64 e v))) (/.f64 (cbrt.f64 (+.f64 1 e)) (sqrt.f64 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 1 e) (*.f64 e (neg.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 1 e) (*.f64 e v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (+.f64 1 e) 3) (pow.f64 (*.f64 e v) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v)))))))) |
| 1× | egg-herbie |
| 733× | fma-def_binary64 |
| 463× | times-frac_binary64 |
| 436× | distribute-lft-out--_binary64 |
| 375× | distribute-rgt-neg-in_binary64 |
| 334× | distribute-lft-neg-in_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 41 | 548 |
| 1 | 107 | 536 |
| 2 | 270 | 526 |
| 3 | 970 | 509 |
| 4 | 4252 | 502 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 1 (*.f64 v e)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
| Outputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(fma.f64 v e (neg.f64 (*.f64 v (*.f64 e e)))) |
(-.f64 (*.f64 v e) (*.f64 v (*.f64 e e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (-.f64 (*.f64 v (pow.f64 e 3)) (*.f64 v (*.f64 e e)))) |
(fma.f64 v e (*.f64 v (-.f64 (pow.f64 e 3) (*.f64 e e)))) |
(*.f64 (*.f64 v e) (-.f64 (fma.f64 e e 1) e)) |
(*.f64 v (*.f64 e (-.f64 (fma.f64 e e 1) e))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (fma.f64 v (pow.f64 e 3) (neg.f64 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (-.f64 (-.f64 (*.f64 v (pow.f64 e 3)) (*.f64 v (pow.f64 e 4))) (*.f64 v (*.f64 e e)))) |
(+.f64 (*.f64 v (-.f64 e (*.f64 e e))) (*.f64 v (-.f64 (pow.f64 e 3) (pow.f64 e 4)))) |
(*.f64 (-.f64 e (*.f64 e e)) (*.f64 (fma.f64 e e 1) v)) |
(*.f64 (+.f64 e (pow.f64 e 3)) (-.f64 v (*.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(-.f64 (+.f64 v (/.f64 v (*.f64 e e))) (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 v (-.f64 (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3))) (/.f64 v e))) |
(+.f64 v (-.f64 (*.f64 (+.f64 (/.f64 -1 e) 1) (/.f64 v (*.f64 e e))) (/.f64 v e))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(*.f64 (+.f64 1 (/.f64 -1 e)) (+.f64 v (/.f64 v (*.f64 e e)))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(-.f64 (+.f64 v (/.f64 v (*.f64 e e))) (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 v (-.f64 (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3))) (/.f64 v e))) |
(+.f64 v (-.f64 (*.f64 (+.f64 (/.f64 -1 e) 1) (/.f64 v (*.f64 e e))) (/.f64 v e))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(*.f64 (+.f64 1 (/.f64 -1 e)) (+.f64 v (/.f64 v (*.f64 e e)))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 v (/.f64 e (+.f64 e 1))) |
(/.f64 1 (*.f64 v e)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) | |
| 0.1b | (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) | |
| 6.1b | (*.f64 (pow.f64 v 3) e) |
Compiled 35 to 21 computations (40% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (sin.f64 v) | |
| 0.1b | (*.f64 (sin.f64 v) e) | |
| ✓ | 0.2b | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| ✓ | 17.7b | (sqrt.f64 (*.f64 (sin.f64 v) e)) |
Compiled 23 to 8 computations (65.2% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | v | @ | 0 | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| 1.0ms | e | @ | -inf | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| 1.0ms | v | @ | 0 | (sqrt.f64 (*.f64 (sin.f64 v) e)) |
| 1.0ms | e | @ | 0 | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| 1.0ms | e | @ | 0 | (sqrt.f64 (*.f64 (sin.f64 v) e)) |
| 1× | batch-egg-rewrite |
| 613× | pow1_binary64 |
| 565× | add-log-exp_binary64 |
| 565× | log1p-expm1-u_binary64 |
| 565× | expm1-log1p-u_binary64 |
| 551× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 14 |
| 1 | 163 | 14 |
| 2 | 1592 | 14 |
| 1× | node limit |
| Inputs |
|---|
(sqrt.f64 (*.f64 (sin.f64 v) e)) |
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (*.f64 (sin.f64 v) e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))) (cbrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 v) e) 1/4) (pow.f64 (*.f64 (sin.f64 v) e) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 e) (sqrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 v) e) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 v) e) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 v) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) e)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 e (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 v) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) (sqrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 v) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))) (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 2) (cbrt.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 e) 2) (*.f64 (cbrt.f64 e) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 v) e) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 v) e) 1/4) (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (*.f64 (sqrt.f64 (sin.f64 v)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (*.f64 (sqrt.f64 e) (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 e) (*.f64 (sqrt.f64 e) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) (pow.f64 (*.f64 (sin.f64 v) e) 1/4)) (pow.f64 (*.f64 (sin.f64 v) e) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 v) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 v) (sqrt.f64 e)) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 e (pow.f64 (cbrt.f64 (sin.f64 v)) 2)) (cbrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 e (sqrt.f64 (sin.f64 v))) (sqrt.f64 (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) (cbrt.f64 (*.f64 (sin.f64 v) e))) (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) (sqrt.f64 (sin.f64 v))) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 v)) e))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 v) e))))))) |
| 1× | egg-herbie |
| 1× | *-commutative_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 48 |
| 1 | 6 | 48 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
| Outputs |
|---|
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
Compiled 8285 to 4704 computations (43.2% saved)
28 alts after pruning (23 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 528 | 9 | 537 |
| Fresh | 6 | 14 | 20 |
| Picked | 0 | 1 | 1 |
| Done | 2 | 4 | 6 |
| Total | 536 | 28 | 564 |
| Status | Error | Program |
|---|---|---|
| 15.3b | (*.f64 e (/.f64 (log.f64 (+.f64 1 (expm1.f64 (sin.f64 v)))) (fma.f64 e (cos.f64 v) 1))) | |
| 15.5b | (*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) | |
| 61.1b | v | |
| ✓ | 28.9b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| ▶ | 62.6b | (-.f64 v (/.f64 v e)) |
| 0.4b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) | |
| 28.2b | (*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) | |
| 0.3b | (/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) | |
| ▶ | 0.3b | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 28.1b | (/.f64 e (/.f64 (+.f64 e 1) v)) | |
| 28.3b | (*.f64 v (-.f64 e (*.f64 e e))) | |
| ▶ | 28.4b | (/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
| 1.0b | (/.f64 (sin.f64 v) (/.f64 1 e)) | |
| 42.9b | (-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) | |
| 28.0b | (*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) | |
| ✓ | 0.8b | (*.f64 (sin.f64 v) e) |
| 1.1b | (*.f64 (*.f64 (sin.f64 v) (sqrt.f64 e)) (sqrt.f64 e)) | |
| 28.7b | (/.f64 1 (/.f64 1 (*.f64 v e))) | |
| ▶ | 63.0b | (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
| 15.3b | (*.f64 e (/.f64 (+.f64 (+.f64 (sin.f64 v) -1) 1) (fma.f64 e (cos.f64 v) 1))) | |
| ▶ | 0.9b | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 29.0b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) | |
| ✓ | 28.4b | (*.f64 v e) |
| 42.8b | (*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) | |
| 1.7b | (*.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) e)) | |
| ✓ | 23.2b | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| ✓ | 0.1b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 28.0b | (/.f64 (*.f64 v e) (+.f64 1 e)) |
Compiled 553 to 386 computations (30.2% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (sin.f64 v) | |
| 0.0b | (cos.f64 v) | |
| ✓ | 0.0b | (+.f64 (/.f64 1 e) (cos.f64 v)) |
| ✓ | 0.3b | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
Compiled 27 to 14 computations (48.1% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | v | @ | 0 | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1.0ms | e | @ | inf | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1.0ms | v | @ | inf | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1.0ms | v | @ | -inf | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1.0ms | e | @ | -inf | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1× | batch-egg-rewrite |
| 528× | prod-diff_binary64 |
| 459× | log-prod_binary64 |
| 361× | exp-prod_binary64 |
| 270× | pow-prod-down_binary64 |
| 255× | pow2_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 23 |
| 1 | 192 | 23 |
| 2 | 2631 | 23 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 v) (/.f64 1 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 2) (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) (/.f64 1 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) (sqrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 v)) (*.f64 (sqrt.f64 (sin.f64 v)) (/.f64 1 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 v)) (/.f64 1 (neg.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (/.f64 1 e) (cos.f64 v))) (sin.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 v)) (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 v)) 1) (/.f64 (sqrt.f64 (sin.f64 v)) (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) -2) (/.f64 (sin.f64 v) (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 2)) (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 v)) (pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 2)) (/.f64 (sqrt.f64 (sin.f64 v)) (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) -1/2) (/.f64 (sin.f64 v) (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) (/.f64 (cbrt.f64 (sin.f64 v)) (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3))) (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 v) (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2))) (-.f64 (/.f64 1 e) (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) (sin.f64 v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 v) 3) (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) (sin.f64 v)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 v) (neg.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 v) 3) (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) (sin.f64 v))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v)))) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 e -2) (-.f64 (/.f64 1 e) (cos.f64 v))) (/.f64 (pow.f64 (cos.f64 v) 2) (-.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (/.f64 1 e) (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) (pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 2) (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3)) (/.f64 1 (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2)) (/.f64 1 (-.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2)) (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (/.f64 1 e) (cos.f64 v)) (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3)) (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3)) (+.f64 (pow.f64 (cos.f64 v) 2) (-.f64 (pow.f64 e -2) (/.f64 (cos.f64 v) e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2)) (-.f64 (/.f64 1 e) (cos.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3))) (neg.f64 (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2))) (neg.f64 (-.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e -2)) (-.f64 (cos.f64 v) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 v) (-.f64 (cos.f64 v) (/.f64 1 e)) (pow.f64 e -2)) (+.f64 (pow.f64 e -3) (pow.f64 (cos.f64 v) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (/.f64 1 e) (cos.f64 v)) (-.f64 (pow.f64 e -2) (pow.f64 (cos.f64 v) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) 2)) (cbrt.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))) (sqrt.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1 e))) (exp.f64 (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 1 e)) (+.f64 1 (expm1.f64 (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 1 e))) (+.f64 1 (expm1.f64 (cos.f64 v)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 v))) (exp.f64 (/.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (cos.f64 v)) (+.f64 1 (expm1.f64 (/.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 v))) (+.f64 1 (expm1.f64 (/.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (/.f64 1 e) (cos.f64 v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 (/.f64 1 e) (cos.f64 v))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 1 e) (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 v) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 e) 1 (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 v) 1 (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 e)) (cbrt.f64 (pow.f64 e -2)) (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 e -2)) (/.f64 1 (cbrt.f64 e)) (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 v)) (cbrt.f64 (pow.f64 (cos.f64 v) 2)) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 v) 2)) (cbrt.f64 (cos.f64 v)) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 e -1/2) (pow.f64 e -1/2) (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 v)) (sqrt.f64 (cos.f64 v)) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (pow.f64 (neg.f64 e) -1) (cos.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 1 (cbrt.f64 e)) (cos.f64 v)))))) |
| 1× | egg-herbie |
| 767× | times-frac_binary64 |
| 719× | fma-neg_binary64 |
| 503× | fma-def_binary64 |
| 466× | unswap-sqr_binary64 |
| 374× | associate-*l*_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 117 | 1001 |
| 1 | 386 | 980 |
| 2 | 1067 | 930 |
| 3 | 4497 | 930 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) |
(+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))))) |
(+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 1/720 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (+.f64 (*.f64 1/24 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 1 (/.f64 1 e)))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))) (+.f64 1 (/.f64 1 e)))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/5040 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))))))) |
(*.f64 (sin.f64 v) e) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(/.f64 1 e) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(cos.f64 v) |
(cos.f64 v) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (+.f64 1 (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 (/.f64 1 e) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2))))) |
(+.f64 (/.f64 1 e) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6)))))) |
| Outputs |
|---|
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(/.f64 v (+.f64 1 (/.f64 1 e))) |
(+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) |
(+.f64 (/.f64 v (+.f64 1 (/.f64 1 e))) (*.f64 (pow.f64 v 3) (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))))) |
(fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (/.f64 v (+.f64 1 (/.f64 1 e)))) |
(+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (+.f64 (/.f64 v (+.f64 1 (/.f64 1 e))) (*.f64 (pow.f64 v 3) (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e))))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (/.f64 v (+.f64 1 (/.f64 1 e))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (/.f64 v (+.f64 1 (/.f64 1 e))))) |
(fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (/.f64 v (+.f64 1 (/.f64 1 e))))) |
(+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (+.f64 (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))) (*.f64 (pow.f64 v 7) (-.f64 (*.f64 1/720 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (+.f64 (*.f64 1/24 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 1 (/.f64 1 e)))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))) (+.f64 1 (/.f64 1 e)))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/5040 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (+.f64 (/.f64 v (+.f64 1 (/.f64 1 e))) (fma.f64 (pow.f64 v 3) (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))) (*.f64 (pow.f64 v 7) (-.f64 (/.f64 1/720 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (fma.f64 1/24 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (+.f64 1 (/.f64 1 e))) (/.f64 1/5040 (+.f64 1 (/.f64 1 e)))))))))) |
(+.f64 (fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (/.f64 v (+.f64 1 (/.f64 1 e))))) (*.f64 (pow.f64 v 7) (-.f64 (/.f64 1/720 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (fma.f64 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) 1/24 (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (+.f64 1 (/.f64 1 e))) (/.f64 1/5040 (+.f64 1 (/.f64 1 e)))))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 1/720 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (fma.f64 -1/2 (-.f64 (/.f64 (+.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (*.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))))) (+.f64 1 (/.f64 1 e))) (/.f64 1/24 (pow.f64 (+.f64 1 (/.f64 1 e)) 3))) (fma.f64 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) 1/24 (/.f64 1/5040 (+.f64 1 (/.f64 1 e)))))) (/.f64 v (+.f64 1 (/.f64 1 e)))))) |
(fma.f64 (pow.f64 v 5) (-.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) (/.f64 1/24 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))))) (fma.f64 (pow.f64 v 3) (+.f64 (/.f64 1/2 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 1 (/.f64 1 e)))) (/.f64 -1/6 (+.f64 1 (/.f64 1 e)))) (fma.f64 (pow.f64 v 7) (-.f64 (/.f64 (/.f64 1/720 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e))) (fma.f64 -1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/120 (+.f64 1 (/.f64 1 e))) (*.f64 1/2 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))))) (+.f64 1 (/.f64 1 e))) (/.f64 -1/24 (pow.f64 (+.f64 1 (/.f64 1 e)) 3))) (fma.f64 (+.f64 (/.f64 1/2 (pow.f64 (+.f64 1 (/.f64 1 e)) 3)) (/.f64 (/.f64 -1/6 (+.f64 1 (/.f64 1 e))) (+.f64 1 (/.f64 1 e)))) 1/24 (/.f64 1/5040 (+.f64 1 (/.f64 1 e)))))) (/.f64 v (+.f64 1 (/.f64 1 e)))))) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 e (sin.f64 v))) |
(-.f64 (*.f64 e (sin.f64 v)) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 e (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3))))) |
(-.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (sin.f64 v) (*.f64 e (*.f64 e (cos.f64 v))))) |
(*.f64 (sin.f64 v) (-.f64 (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 e (*.f64 e (cos.f64 v))))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4)))) (+.f64 (*.f64 (sin.f64 v) e) (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (*.f64 e e))) (fma.f64 -1 (*.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))) (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))))) |
(+.f64 (*.f64 (sin.f64 v) (+.f64 e (*.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3)))) (*.f64 (neg.f64 (sin.f64 v)) (+.f64 (*.f64 e (*.f64 e (cos.f64 v))) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(fma.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e) (*.f64 (neg.f64 (sin.f64 v)) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(-.f64 (*.f64 (sin.f64 v) (fma.f64 (pow.f64 (cos.f64 v) 2) (pow.f64 e 3) e)) (*.f64 (sin.f64 v) (fma.f64 e (*.f64 e (cos.f64 v)) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 4))))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (-.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(/.f64 (sin.f64 v) (cos.f64 v)) |
(+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v)))) |
(+.f64 (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e))) |
(+.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))))) |
(-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (-.f64 (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)) (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(+.f64 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 3) (pow.f64 e 2))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 4) (pow.f64 e 3)))) (+.f64 (*.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 (cos.f64 v) 2) e))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))) (fma.f64 -1 (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2))) (/.f64 (sin.f64 v) (cos.f64 v))))) |
(+.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 e (pow.f64 (cos.f64 v) 2)))) (-.f64 (/.f64 (/.f64 (sin.f64 v) (*.f64 e e)) (pow.f64 (cos.f64 v) 3)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4))))) |
(+.f64 (/.f64 (/.f64 (sin.f64 v) (pow.f64 (cos.f64 v) 3)) (*.f64 e e)) (-.f64 (-.f64 (/.f64 (sin.f64 v) (cos.f64 v)) (/.f64 (sin.f64 v) (*.f64 (pow.f64 e 3) (pow.f64 (cos.f64 v) 4)))) (/.f64 (/.f64 (sin.f64 v) e) (pow.f64 (cos.f64 v) 2)))) |
(/.f64 1 e) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(+.f64 (cos.f64 v) (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (cos.f64 v)) |
(cos.f64 v) |
(cos.f64 v) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) (+.f64 1 (*.f64 -1/2 (pow.f64 v 2)))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (*.f64 -1/2 (*.f64 v v))) |
(+.f64 (/.f64 1 e) (fma.f64 -1/2 (*.f64 v v) 1)) |
(+.f64 1 (fma.f64 v (*.f64 v -1/2) (/.f64 1 e))) |
(+.f64 (/.f64 1 e) (fma.f64 v (*.f64 v -1/2) 1)) |
(+.f64 (/.f64 1 e) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (*.f64 -1/2 (pow.f64 v 2))))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/2 (*.f64 v v)))) |
(+.f64 1 (+.f64 (/.f64 1 e) (fma.f64 -1/2 (*.f64 v v) (*.f64 1/24 (pow.f64 v 4))))) |
(+.f64 (/.f64 1 e) (fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) 1))) |
(+.f64 (/.f64 1 e) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 v 4)) (+.f64 (*.f64 -1/2 (pow.f64 v 2)) (*.f64 -1/720 (pow.f64 v 6)))))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (fma.f64 1/24 (pow.f64 v 4) (fma.f64 -1/2 (*.f64 v v) (*.f64 -1/720 (pow.f64 v 6))))) |
(+.f64 1 (+.f64 (fma.f64 1/24 (pow.f64 v 4) (fma.f64 -1/2 (*.f64 v v) (*.f64 -1/720 (pow.f64 v 6)))) (/.f64 1 e))) |
(+.f64 (/.f64 1 e) (+.f64 1 (fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/720 (pow.f64 v 6)))))) |
(+.f64 (+.f64 1 (/.f64 1 e)) (fma.f64 v (*.f64 v -1/2) (fma.f64 1/24 (pow.f64 v 4) (*.f64 -1/720 (pow.f64 v 6))))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (-.f64 v (/.f64 v e)) |
Compiled 12 to 4 computations (66.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | v | @ | 0 | (-.f64 v (/.f64 v e)) |
| 1.0ms | v | @ | inf | (-.f64 v (/.f64 v e)) |
| 0.0ms | e | @ | -inf | (-.f64 v (/.f64 v e)) |
| 0.0ms | v | @ | -inf | (-.f64 v (/.f64 v e)) |
| 0.0ms | e | @ | 0 | (-.f64 v (/.f64 v e)) |
| 1× | batch-egg-rewrite |
| 726× | pow1_binary64 |
| 678× | add-log-exp_binary64 |
| 678× | log1p-expm1-u_binary64 |
| 678× | expm1-log1p-u_binary64 |
| 663× | add-exp-log_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 7 |
| 1 | 116 | 7 |
| 2 | 1789 | 7 |
| 1× | node limit |
| Inputs |
|---|
(-.f64 v (/.f64 v e)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 v (/.f64 (neg.f64 v) e))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 v (*.f64 (/.f64 (neg.f64 v) e) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 v (/.f64 v e)) (fma.f64 (neg.f64 (/.f64 1 e)) v (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 v (/.f64 v e)) (fma.f64 (/.f64 (neg.f64 v) e) 1 (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 v (/.f64 v e)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v e))) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 v (/.f64 v e)) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 v e))) (sqrt.f64 (/.f64 v e)) (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (neg.f64 v) e) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 v (/.f64 v e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 v (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2) (cbrt.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) (sqrt.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 v 3) (pow.f64 (/.f64 v e) 3)) (/.f64 1 (fma.f64 v v (*.f64 (/.f64 v e) (+.f64 v (/.f64 v e))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 v v) (pow.f64 (/.f64 v e) 2)) (/.f64 1 (+.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 v) (sqrt.f64 (/.f64 v e))) (-.f64 (sqrt.f64 v) (sqrt.f64 (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 v v (*.f64 (/.f64 v e) (+.f64 v (/.f64 v e)))) (-.f64 (pow.f64 v 3) (pow.f64 (/.f64 v e) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 v (/.f64 v e)) (-.f64 (*.f64 v v) (pow.f64 (/.f64 v e) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 v 3) (pow.f64 (/.f64 v e) 3)) (fma.f64 v v (*.f64 (/.f64 v e) (+.f64 v (/.f64 v e)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 v v) (pow.f64 (/.f64 v e) 2)) (+.f64 v (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 v 3) (pow.f64 (/.f64 v e) 3))) (neg.f64 (fma.f64 v v (*.f64 (/.f64 v e) (+.f64 v (/.f64 v e))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 v v) (pow.f64 (/.f64 v e) 2))) (neg.f64 (+.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 v 3) (pow.f64 (/.f64 (neg.f64 v) e) 3)) (+.f64 (*.f64 v v) (-.f64 (*.f64 (/.f64 (neg.f64 v) e) (/.f64 (neg.f64 v) e)) (*.f64 v (/.f64 (neg.f64 v) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 v v) (*.f64 (/.f64 (neg.f64 v) e) (/.f64 (neg.f64 v) e))) (-.f64 v (/.f64 (neg.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 v (/.f64 v e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 v (/.f64 v e)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 v (/.f64 v e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 v (/.f64 v e)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 v (/.f64 (neg.f64 v) e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 v) 2) (cbrt.f64 v) (/.f64 (neg.f64 v) e))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 v) (sqrt.f64 v) (/.f64 (neg.f64 v) e)))))) |
| 1× | egg-herbie |
| 141× | fma-def_binary64 |
| 67× | fma-neg_binary64 |
| 39× | associate-*r*_binary64 |
| 39× | distribute-rgt-in_binary64 |
| 32× | distribute-lft-in_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 218 |
| 1 | 30 | 218 |
| 2 | 71 | 155 |
| 3 | 136 | 155 |
| 4 | 244 | 155 |
| 5 | 473 | 155 |
| 6 | 697 | 155 |
| 7 | 701 | 155 |
| 1× | saturated |
| Inputs |
|---|
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
| Outputs |
|---|
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (/.f64 v e)) |
(neg.f64 (/.f64 v e)) |
(/.f64 (neg.f64 v) e) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(-.f64 v (/.f64 v e)) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (-.f64 v (/.f64 v e)) | |
| ✓ | 0.1b | (/.f64 (-.f64 v (/.f64 v e)) e) |
| ✓ | 16.3b | (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
Compiled 28 to 6 computations (78.6% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | e | @ | -inf | (/.f64 (-.f64 v (/.f64 v e)) e) |
| 1.0ms | v | @ | -inf | (/.f64 (-.f64 v (/.f64 v e)) e) |
| 1.0ms | v | @ | 0 | (/.f64 (-.f64 v (/.f64 v e)) e) |
| 0.0ms | e | @ | 0 | (/.f64 (-.f64 v (/.f64 v e)) e) |
| 0.0ms | e | @ | inf | (/.f64 (-.f64 v (/.f64 v e)) e) |
| 1× | batch-egg-rewrite |
| 825× | prod-diff_binary64 |
| 496× | log-prod_binary64 |
| 336× | pow-prod-down_binary64 |
| 266× | egg-rr |
| 246× | fma-def_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 23 |
| 1 | 164 | 23 |
| 2 | 2643 | 23 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) e)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) e))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 e (/.f64 e (-.f64 v (/.f64 v e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (-.f64 v (/.f64 v e))) e)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 e (-.f64 v (/.f64 v e)))) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (-.f64 v (/.f64 v e))) 1) e)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (-.f64 v (/.f64 v e))) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 e (-.f64 v (/.f64 v e))) (sqrt.f64 e)) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 v (/.f64 v e))) e) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 e (neg.f64 (-.f64 v (/.f64 v e)))) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e))) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 v e) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 v (/.f64 v e)) e) (fma.f64 (neg.f64 (/.f64 1 e)) (/.f64 v e) (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 v (/.f64 v e)) e) (fma.f64 (neg.f64 (sqrt.f64 (/.f64 v (*.f64 e e)))) (sqrt.f64 (/.f64 v (*.f64 e e))) (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 v (/.f64 v e)) e) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 v (/.f64 v e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 v (*.f64 e e)) 1))) (fma.f64 (neg.f64 (/.f64 v (*.f64 e e))) 1 (*.f64 (/.f64 v (*.f64 e e)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2)))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 v (*.f64 e e)))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2) (*.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) (pow.f64 (cbrt.f64 (/.f64 v (*.f64 e e))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -2) (/.f64 v 1)))) (fma.f64 (neg.f64 (pow.f64 e -2)) (/.f64 v 1) (*.f64 (pow.f64 e -2) (/.f64 v 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1)))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) e) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1)))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e)) (/.f64 (sqrt.f64 (/.f64 v e)) 1) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) e) (/.f64 (sqrt.f64 (/.f64 v e)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e))) (/.f64 v (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (/.f64 1 e) (cbrt.f64 e)) (/.f64 v (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (cbrt.f64 e))) (pow.f64 (cbrt.f64 e) -2) (*.f64 (/.f64 (/.f64 v e) (cbrt.f64 e)) (pow.f64 (cbrt.f64 e) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2))))) (fma.f64 (neg.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e))) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)) (*.f64 (/.f64 (sqrt.f64 (/.f64 v e)) (cbrt.f64 e)) (/.f64 (sqrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 e) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e))))) (fma.f64 (neg.f64 (pow.f64 e -3/2)) (/.f64 v (sqrt.f64 e)) (*.f64 (pow.f64 e -3/2) (/.f64 v (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2)))) (fma.f64 (neg.f64 (/.f64 (/.f64 v e) (sqrt.f64 e))) (pow.f64 e -1/2) (*.f64 (/.f64 (/.f64 v e) (sqrt.f64 e)) (pow.f64 e -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 v (/.f64 1 e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 v e) 1 (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (/.f64 v e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 1 e) v (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e))))) (fma.f64 (neg.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e))) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)) (*.f64 (/.f64 (cbrt.f64 (/.f64 v e)) (sqrt.f64 e)) (/.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (sqrt.f64 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 v e) (/.f64 v (*.f64 e e)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 v (/.f64 v e)) e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 v (/.f64 v e)) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 v (/.f64 v e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) 2) (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2) (*.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) (sqrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) (*.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 v (/.f64 v e))) (/.f64 1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 e) (-.f64 v (/.f64 v e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 (-.f64 v (/.f64 v e)) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 e -1/2) (/.f64 (-.f64 v (/.f64 v e)) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2) 1) (/.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) 1) (/.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 (-.f64 v (/.f64 v e))) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 (-.f64 v (/.f64 v e))) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (-.f64 v (/.f64 v e))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 v (/.f64 v e)) 3) (pow.f64 e 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 e (-.f64 v (/.f64 v e))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 v (/.f64 v e)) (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 v (/.f64 v e)) e))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 v e))) (exp.f64 (/.f64 v (*.f64 e e)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (-.f64 v (/.f64 v e)) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 v (/.f64 v e)) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (-.f64 v (/.f64 v e)) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 v (/.f64 v e)) e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 v (/.f64 1 e) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 v e) 1 (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 v e) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 v) 2) (*.f64 (cbrt.f64 v) (/.f64 1 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 v e)) (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 v e)) 2) (cbrt.f64 (/.f64 v e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 v) (*.f64 (sqrt.f64 v) (/.f64 1 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 v e)) (sqrt.f64 (/.f64 v e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 v) (/.f64 1 (neg.f64 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 e) v (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 v (cbrt.f64 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 e -1/2) (/.f64 v (sqrt.f64 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) 1) (/.f64 (cbrt.f64 v) e) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 v) 1) (/.f64 (sqrt.f64 v) e) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 v e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 v) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 v) (cbrt.f64 e)) (neg.f64 (/.f64 v (*.f64 e e))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 v) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 v) (sqrt.f64 e)) (neg.f64 (/.f64 v (*.f64 e e)))))))) |
| 1× | egg-herbie |
| 780× | fma-neg_binary64 |
| 524× | div-sub_binary64 |
| 479× | distribute-neg-frac_binary64 |
| 458× | associate-/l*_binary64 |
| 325× | associate-*l/_binary64 |
Useful iterations: 2 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 487 |
| 1 | 54 | 445 |
| 2 | 121 | 382 |
| 3 | 310 | 382 |
| 4 | 1046 | 382 |
| 5 | 4934 | 382 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 -1 (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(*.f64 -1 (/.f64 v (pow.f64 e 2))) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
| Outputs |
|---|
(*.f64 -1 (/.f64 v e)) |
(neg.f64 (/.f64 v e)) |
(/.f64 (neg.f64 v) e) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(*.f64 -1 (*.f64 v (-.f64 (/.f64 1 e) 1))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(*.f64 -1 (/.f64 (*.f64 v (-.f64 (/.f64 1 e) 1)) e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(*.f64 -1 (/.f64 v (pow.f64 e 2))) |
(neg.f64 (/.f64 v (*.f64 e e))) |
(/.f64 (/.f64 (neg.f64 v) e) e) |
(/.f64 (neg.f64 (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(/.f64 v e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
(+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 2))) (/.f64 v e)) |
(/.f64 (*.f64 v (-.f64 1 (/.f64 1 e))) e) |
(*.f64 (/.f64 v e) (+.f64 1 (/.f64 -1 e))) |
(/.f64 (-.f64 v (/.f64 v e)) e) |
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f64 (+.f64 1 e) e) |
| ✓ | 0.2b | (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v)) |
| ✓ | 0.6b | (/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
Compiled 36 to 24 computations (33.3% saved)
15 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | e | @ | inf | (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v)) |
| 0.0ms | e | @ | 0 | (/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
| 0.0ms | e | @ | 0 | (/.f64 (+.f64 1 e) e) |
| 0.0ms | e | @ | -inf | (/.f64 (+.f64 1 e) e) |
| 0.0ms | e | @ | inf | (/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
| 1× | batch-egg-rewrite |
| 529× | log-prod_binary64 |
| 366× | pow-prod-down_binary64 |
| 258× | pow2_binary64 |
| 230× | log-div_binary64 |
| 182× | pow-unpow_binary64 |
Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 9 | 30 |
| 1 | 207 | 27 |
| 2 | 3108 | 27 |
| 1× | node limit |
| Inputs |
|---|
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v)) |
(/.f64 (+.f64 1 e) e) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 v (/.f64 e (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 v) (/.f64 e (+.f64 1 e)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 v) (/.f64 e (+.f64 1 e))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 v) (/.f64 e (+.f64 1 e))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 v) (/.f64 e (+.f64 1 e))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 v (/.f64 e (+.f64 1 e))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 v (/.f64 e (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 v (/.f64 e (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 v (/.f64 e (+.f64 1 e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) (cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -2)) (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) (sqrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (fma.f64 -1 e -1) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 e (+.f64 1 e)) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 e (+.f64 1 e)) 1) v)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 1 e)) (*.f64 e v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (+.f64 1 e) v)) e)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 e (+.f64 1 e)) -1) (neg.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -2) (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 v (/.f64 e (+.f64 1 e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (/.f64 (fma.f64 -1 e -1) (*.f64 e v))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 v) (/.f64 e (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 v (/.f64 e (+.f64 1 e))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 v (/.f64 e (+.f64 1 e))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (+.f64 1 e) (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 1 e) (*.f64 e v)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 v (/.f64 e (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 e v) (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 e (/.f64 (+.f64 1 e) v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 e) (*.f64 e v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 e) (/.f64 (*.f64 e v) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1 e) (/.f64 e (/.f64 1 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 e) e) v)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 v) (/.f64 e (+.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2) (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 2) (/.f64 v (cbrt.f64 (/.f64 (+.f64 1 e) e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) (sqrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (+.f64 1 e) e)) (/.f64 v (sqrt.f64 (/.f64 (+.f64 1 e) e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 e (+.f64 1 e)) (neg.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 v) (/.f64 e (+.f64 1 e))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 e -1) (neg.f64 (*.f64 e v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 e -1) (*.f64 (neg.f64 v) e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1 e -1) (*.f64 v (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (fma.f64 -1 e -1) (*.f64 e v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 1 e) v) e)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (+.f64 1 e) e)) (neg.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 (+.f64 1 e) v)) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 e -1) 1) (*.f64 (neg.f64 e) v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 1 e) -1) (*.f64 e (neg.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 e -1) -1) (*.f64 (neg.f64 e) (neg.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (fma.f64 -1 e -1)) (*.f64 (neg.f64 v) (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) e) (sqrt.f64 v)) (sqrt.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) e) 1) v)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) e) (pow.f64 (cbrt.f64 v) 2)) (cbrt.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) v) 1) e)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) v) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 (+.f64 1 e) v) (sqrt.f64 e)) (sqrt.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1 e -1) (/.f64 1 v)) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 (+.f64 1 e) e)) (neg.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (+.f64 1 e) e) -1) (neg.f64 v))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 v) (fma.f64 -1 e -1)) (neg.f64 e))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 v (/.f64 e (+.f64 1 e))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) -3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) (*.f64 e v))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 v (/.f64 e (+.f64 1 e)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 3) (pow.f64 v 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 e v) (+.f64 1 e)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (/.f64 (+.f64 1 e) v)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 1 e) (*.f64 e v)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) (*.f64 e v)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 3) (pow.f64 v 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 1 e) (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 (*.f64 e v))) 1) 1)))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (+.f64 1 e) e))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (+.f64 1 e) e))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (+.f64 1 e) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (+.f64 1 e) e)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (+.f64 1 e) e)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (+.f64 1 e) e))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (+.f64 1 e) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 e) (/.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1 e) (*.f64 (/.f64 1 e) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 1 e) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 2) (cbrt.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 2) (*.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (*.f64 (cbrt.f64 (+.f64 1 e)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 1 e) e)) (sqrt.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (+.f64 1 e) e)) (*.f64 (sqrt.f64 (/.f64 (+.f64 1 e) e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1 e)) (*.f64 (sqrt.f64 (+.f64 1 e)) (/.f64 1 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1 e -1) (/.f64 1 (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 e) (+.f64 1 e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) 1) (/.f64 (cbrt.f64 (+.f64 1 e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) 1) (/.f64 (sqrt.f64 (+.f64 1 e)) e))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 e) -2) (/.f64 (+.f64 1 e) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (pow.f64 (cbrt.f64 e) 2)) (cbrt.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 1 e)) (pow.f64 (cbrt.f64 e) 2)) (/.f64 (sqrt.f64 (+.f64 1 e)) (cbrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 e -1/2) (/.f64 (+.f64 1 e) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 1 e)) 2) (sqrt.f64 e)) (/.f64 (cbrt.f64 (+.f64 1 e)) (sqrt.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 1 e) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (+.f64 1 e) e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (+.f64 1 e) e)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 e (+.f64 1 e)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (+.f64 1 e) 3) (pow.f64 e 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 e (+.f64 1 e)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 1 e) (neg.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (+.f64 1 e) e))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (+.f64 1 e) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (+.f64 1 e) 3) (pow.f64 e 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (+.f64 1 e) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log1p.f64 e) (log.f64 e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 e)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (-.f64 (log1p.f64 e) (log.f64 e))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (-.f64 (log1p.f64 e) (log.f64 e))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (-.f64 (log1p.f64 e) (log.f64 e))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (-.f64 (log.f64 e) (log1p.f64 e)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 e) (log.f64 e)) 1) 1)))))) |
| 1× | egg-herbie |
| 735× | fma-def_binary64 |
| 463× | times-frac_binary64 |
| 436× | distribute-lft-out--_binary64 |
| 376× | distribute-rgt-neg-in_binary64 |
| 333× | distribute-lft-neg-in_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 44 | 617 |
| 1 | 110 | 605 |
| 2 | 272 | 595 |
| 3 | 972 | 578 |
| 4 | 4265 | 571 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 1 (*.f64 v e)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 1 e) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 1 (/.f64 1 e)) |
1 |
(+.f64 (/.f64 1 e) 1) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 (/.f64 1 e) 1) |
1 |
(+.f64 (/.f64 1 e) 1) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 (/.f64 1 e) 1) |
| Outputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 v e) (*.f64 -1 (*.f64 v (pow.f64 e 2)))) |
(fma.f64 v e (neg.f64 (*.f64 v (*.f64 e e)))) |
(-.f64 (*.f64 v e) (*.f64 v (*.f64 e e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (fma.f64 (neg.f64 v) (*.f64 e e) (*.f64 v (pow.f64 e 3)))) |
(fma.f64 v e (*.f64 (*.f64 v e) (-.f64 (*.f64 e e) e))) |
(*.f64 (*.f64 v e) (-.f64 (fma.f64 e e 1) e)) |
(+.f64 (*.f64 v e) (+.f64 (*.f64 -1 (*.f64 v (pow.f64 e 2))) (+.f64 (*.f64 v (pow.f64 e 3)) (*.f64 -1 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (fma.f64 -1 (*.f64 v (*.f64 e e)) (fma.f64 v (pow.f64 e 3) (neg.f64 (*.f64 v (pow.f64 e 4)))))) |
(fma.f64 v e (-.f64 (fma.f64 (neg.f64 v) (*.f64 e e) (*.f64 v (pow.f64 e 3))) (*.f64 v (pow.f64 e 4)))) |
(+.f64 (*.f64 v (-.f64 e (*.f64 e e))) (*.f64 v (-.f64 (pow.f64 e 3) (pow.f64 e 4)))) |
(*.f64 (fma.f64 e e 1) (*.f64 v (-.f64 e (*.f64 e e)))) |
(*.f64 (+.f64 e (pow.f64 e 3)) (-.f64 v (*.f64 v e))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 v (-.f64 (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3))) (/.f64 v e))) |
(+.f64 v (-.f64 (*.f64 (+.f64 (/.f64 -1 e) 1) (/.f64 v (*.f64 e e))) (/.f64 v e))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(*.f64 (+.f64 1 (/.f64 -1 e)) (+.f64 v (/.f64 v (*.f64 e e)))) |
v |
(+.f64 v (*.f64 -1 (/.f64 v e))) |
(+.f64 v (neg.f64 (/.f64 v e))) |
(-.f64 v (/.f64 v e)) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (/.f64 v (pow.f64 e 2)))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (/.f64 v (*.f64 e e)))) |
(+.f64 v (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v e))) |
(+.f64 v (+.f64 (*.f64 -1 (/.f64 v e)) (+.f64 (*.f64 -1 (/.f64 v (pow.f64 e 3))) (/.f64 v (pow.f64 e 2))))) |
(+.f64 v (fma.f64 -1 (/.f64 v e) (fma.f64 -1 (/.f64 v (pow.f64 e 3)) (/.f64 v (*.f64 e e))))) |
(+.f64 v (-.f64 (-.f64 (/.f64 v (*.f64 e e)) (/.f64 v (pow.f64 e 3))) (/.f64 v e))) |
(+.f64 v (-.f64 (*.f64 (+.f64 (/.f64 -1 e) 1) (/.f64 v (*.f64 e e))) (/.f64 v e))) |
(+.f64 v (-.f64 (/.f64 (-.f64 v (/.f64 v e)) (*.f64 e e)) (/.f64 v e))) |
(*.f64 (+.f64 1 (/.f64 -1 e)) (+.f64 v (/.f64 v (*.f64 e e)))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 v e) (+.f64 e 1)) |
(/.f64 v (/.f64 (+.f64 e 1) e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 1 (*.f64 v e)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 v) (/.f64 1 (*.f64 v e))) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 1 v) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(+.f64 (/.f64 1 (*.f64 v e)) (/.f64 1 v)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 (+.f64 1 e) (*.f64 v e)) |
(/.f64 (+.f64 e 1) (*.f64 v e)) |
(/.f64 1 e) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 1 (/.f64 1 e)) |
1 |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
1 |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
(+.f64 (/.f64 1 e) 1) |
(+.f64 1 (/.f64 1 e)) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (sin.f64 v) | |
| 0.1b | (expm1.f64 (sin.f64 v)) | |
| ✓ | 0.1b | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 0.2b | (log1p.f64 (expm1.f64 (sin.f64 v))) |
Compiled 19 to 6 computations (68.4% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | v | @ | inf | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 0.0ms | v | @ | 0 | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 0.0ms | e | @ | inf | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 0.0ms | e | @ | -inf | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 0.0ms | v | @ | -inf | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 1× | batch-egg-rewrite |
| 543× | pow1_binary64 |
| 518× | add-sqr-sqrt_binary64 |
| 498× | expm1-log1p-u_binary64 |
| 497× | add-log-exp_binary64 |
| 497× | log1p-expm1-u_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 6 |
| 1 | 119 | 6 |
| 2 | 1356 | 6 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 v) e)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 v) e) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 e) (sin.f64 v)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 v) e) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 v) e)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 v) e))))))) |
| 1× | egg-herbie |
| 1155× | fma-def_binary64 |
| 690× | unswap-sqr_binary64 |
| 654× | sqr-pow_binary64 |
| 596× | cube-prod_binary64 |
| 430× | fabs-mul_binary64 |
Useful iterations: 4 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 196 |
| 1 | 73 | 193 |
| 2 | 194 | 182 |
| 3 | 588 | 180 |
| 4 | 1572 | 178 |
| 5 | 2429 | 178 |
| 6 | 2636 | 178 |
| 7 | 3084 | 178 |
| 8 | 3963 | 178 |
| 9 | 4106 | 178 |
| 10 | 4333 | 178 |
| 11 | 4815 | 178 |
| 12 | 5411 | 178 |
| 13 | 6284 | 178 |
| 14 | 7393 | 178 |
| 1× | node limit |
| Inputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
(*.f64 (sin.f64 v) e) |
| Outputs |
|---|
(*.f64 v e) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 v e)) |
(*.f64 e (+.f64 v (*.f64 -1/6 (pow.f64 v 3)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) v)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 v e))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (*.f64 e (+.f64 (*.f64 1/120 (pow.f64 v 5)) v))) |
(*.f64 e (+.f64 (*.f64 -1/6 (pow.f64 v 3)) (fma.f64 1/120 (pow.f64 v 5) v))) |
(*.f64 e (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/6 (pow.f64 v 3) v))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) v))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (+.f64 (*.f64 v e) (*.f64 -1/5040 (*.f64 (pow.f64 v 7) e))))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (fma.f64 v e (*.f64 -1/5040 (*.f64 e (pow.f64 v 7)))))) |
(fma.f64 -1/6 (*.f64 e (pow.f64 v 3)) (fma.f64 1/120 (*.f64 e (pow.f64 v 5)) (*.f64 e (+.f64 (*.f64 -1/5040 (pow.f64 v 7)) v)))) |
(*.f64 e (+.f64 (fma.f64 -1/5040 (pow.f64 v 7) v) (fma.f64 -1/6 (pow.f64 v 3) (*.f64 1/120 (pow.f64 v 5))))) |
(*.f64 e (+.f64 (fma.f64 1/120 (pow.f64 v 5) v) (fma.f64 -1/5040 (pow.f64 v 7) (*.f64 -1/6 (pow.f64 v 3))))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 -1/5040 (pow.f64 v 7) (fma.f64 1/120 (pow.f64 v 5) v)))) |
(*.f64 e (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/5040 (pow.f64 v 7) (fma.f64 -1/6 (pow.f64 v 3) v)))) |
(*.f64 e (fma.f64 -1/6 (pow.f64 v 3) (fma.f64 1/120 (pow.f64 v 5) (fma.f64 -1/5040 (pow.f64 v 7) v)))) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
Compiled 20422 to 9048 computations (55.7% saved)
36 alts after pruning (28 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 866 | 17 | 883 |
| Fresh | 7 | 11 | 18 |
| Picked | 0 | 1 | 1 |
| Done | 2 | 7 | 9 |
| Total | 875 | 36 | 911 |
| Status | Error | Program |
|---|---|---|
| 61.1b | v | |
| 63.0b | (*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) | |
| 15.5b | (*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) | |
| ✓ | 28.9b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
| ✓ | 62.6b | (-.f64 v (/.f64 v e)) |
| 0.3b | (/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) | |
| ✓ | 0.3b | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
| 1.0b | (/.f64 (sin.f64 v) (/.f64 1 e)) | |
| ✓ | 23.2b | (pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
| 62.6b | (/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) | |
| 28.1b | (/.f64 e (/.f64 (+.f64 e 1) v)) | |
| 63.0b | (/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) | |
| 42.9b | (-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) | |
| 28.0b | (*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) | |
| 28.3b | (*.f64 v (-.f64 e (*.f64 e e))) | |
| 28.6b | (+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))))) | |
| ✓ | 0.8b | (*.f64 (sin.f64 v) e) |
| 1.1b | (*.f64 (*.f64 (sin.f64 v) (sqrt.f64 e)) (sqrt.f64 e)) | |
| 28.7b | (/.f64 1 (/.f64 1 (*.f64 v e))) | |
| 30.5b | (*.f64 (log1p.f64 (pow.f64 (sqrt.f64 (expm1.f64 (sin.f64 v))) 2)) e) | |
| 28.5b | (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) | |
| 28.4b | (/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) | |
| 15.3b | (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (+.f64 (/.f64 1 e) (cos.f64 v))) | |
| 0.5b | (/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) | |
| 28.4b | (/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) | |
| 28.4b | (/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) | |
| 0.6b | (pow.f64 (/.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) (sin.f64 v)) -1) | |
| ✓ | 0.9b | (*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
| 29.0b | (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) | |
| ✓ | 28.4b | (*.f64 v e) |
| 42.8b | (*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) | |
| 62.6b | (*.f64 v (-.f64 1 (/.f64 1 e))) | |
| 1.7b | (*.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) e)) | |
| ✓ | 0.1b | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| 28.0b | (/.f64 v (+.f64 (/.f64 1 e) 1)) | |
| 62.6b | (/.f64 (neg.f64 v) e) |
Compiled 497 to 374 computations (24.7% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
(*.f64 (sin.f64 v) e) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e 1 1))) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(/.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) |
(+.f64 (*.f64 (pow.f64 v 5) (-.f64 (*.f64 1/120 (/.f64 1 (+.f64 (/.f64 1 e) 1))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 (/.f64 1 e) 1) (+.f64 1 (/.f64 1 e))))) (*.f64 1/6 (/.f64 1 (+.f64 1 (/.f64 1 e))))) (+.f64 (/.f64 1 e) 1))) (*.f64 1/24 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1))))))) (+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1))))))) |
(*.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) e) |
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 v) e)) 2) |
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 v) e)) 3) |
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 v)) 2) e) |
(*.f64 (*.f64 (sin.f64 v) (sqrt.f64 e)) (sqrt.f64 e)) |
(/.f64 (sin.f64 v) (/.f64 (fma.f64 e (cos.f64 v) 1) e)) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(/.f64 e (/.f64 (fma.f64 e (cos.f64 v) 1) (sin.f64 v))) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e (cos.f64 v) 1))) |
(pow.f64 (/.f64 (+.f64 (/.f64 1 e) (cos.f64 v)) (sin.f64 v)) -1) |
(/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 (sin.f64 v) e))) |
(/.f64 1 (/.f64 (fma.f64 e (cos.f64 v) 1) (*.f64 e (sin.f64 v)))) |
(*.f64 e (/.f64 (+.f64 (+.f64 (sin.f64 v) -1) 1) (fma.f64 e (cos.f64 v) 1))) |
(*.f64 e (/.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) (fma.f64 e (cos.f64 v) 1))) |
(/.f64 (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 v 5) e)) (*.f64 v e))) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (pow.f64 (sqrt.f64 (*.f64 e (sin.f64 v))) 2) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (pow.f64 (cbrt.f64 (*.f64 e (sin.f64 v))) 3) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(+.f64 (*.f64 -1 (*.f64 (sin.f64 v) (*.f64 (cos.f64 v) (pow.f64 e 2)))) (*.f64 (sin.f64 v) e)) |
(*.f64 (log1p.f64 (pow.f64 (sqrt.f64 (expm1.f64 (sin.f64 v))) 2)) e) |
(*.f64 (pow.f64 (cbrt.f64 (sin.f64 v)) 2) (*.f64 (cbrt.f64 (sin.f64 v)) e)) |
(*.f64 e (/.f64 (log1p.f64 (expm1.f64 (sin.f64 v))) (fma.f64 e (cos.f64 v) 1))) |
(*.f64 e (/.f64 (log.f64 (+.f64 1 (expm1.f64 (sin.f64 v)))) (fma.f64 e (cos.f64 v) 1))) |
| Outputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
3 calls:
| 38.0ms | e |
| 32.0ms | v |
| 25.0ms | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
| Error | Segments | Branch |
|---|---|---|
| 0.1b | 1 | e |
| 0.1b | 1 | v |
| 0.1b | 1 | (/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
Compiled 759 to 430 computations (43.3% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
(*.f64 (sin.f64 v) e) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(*.f64 e (/.f64 (sin.f64 v) (fma.f64 e 1 1))) |
| Outputs |
|---|
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
2 calls:
| 34.0ms | v |
| 33.0ms | e |
| Error | Segments | Branch |
|---|---|---|
| 0.3b | 1 | e |
| 0.3b | 1 | v |
Compiled 330 to 182 computations (44.8% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
(*.f64 (sin.f64 v) e) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 v 3) e)) (*.f64 v e)) |
(+.f64 (/.f64 v (+.f64 (/.f64 1 e) 1)) (*.f64 (pow.f64 v 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (+.f64 1 (/.f64 1 e)) (+.f64 (/.f64 1 e) 1)))) (*.f64 1/6 (/.f64 1 (+.f64 (/.f64 1 e) 1)))))) |
| Outputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
2 calls:
| 20.0ms | e |
| 20.0ms | v |
| Error | Segments | Branch |
|---|---|---|
| 0.4b | 1 | e |
| 0.4b | 1 | v |
Compiled 312 to 172 computations (44.9% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
(*.f64 (sin.f64 v) e) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(*.f64 (-.f64 (+.f64 1 (sin.f64 v)) 1) e) |
| Outputs |
|---|
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
2 calls:
| 18.0ms | v |
| 16.0ms | e |
| Error | Segments | Branch |
|---|---|---|
| 0.5b | 1 | e |
| 0.5b | 1 | v |
Compiled 256 to 131 computations (48.8% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
(*.f64 (sin.f64 v) e) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
(/.f64 (sin.f64 v) (/.f64 1 e)) |
| Outputs |
|---|
(*.f64 (sin.f64 v) e) |
2 calls:
| 16.0ms | v |
| 15.0ms | e |
| Error | Segments | Branch |
|---|---|---|
| 0.8b | 1 | e |
| 0.8b | 1 | v |
Compiled 240 to 121 computations (49.6% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 (/.f64 e (+.f64 e 1)) v) |
(*.f64 e (/.f64 (/.f64 (neg.f64 v) e) e)) |
(/.f64 e (/.f64 e (-.f64 v (/.f64 v e)))) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) e) v)) |
(/.f64 1 (/.f64 (/.f64 (+.f64 1 e) v) e)) |
(*.f64 (/.f64 1 (/.f64 (+.f64 1 e) e)) v) |
(/.f64 1 (/.f64 (+.f64 e 1) (*.f64 e v))) |
(*.f64 e (/.f64 (-.f64 v (/.f64 v e)) e)) |
(/.f64 1 (/.f64 e (*.f64 e (-.f64 v (/.f64 v e))))) |
(/.f64 1 (/.f64 (+.f64 1 e) (/.f64 v (/.f64 1 e)))) |
(/.f64 1 (*.f64 (/.f64 (+.f64 1 e) e) (/.f64 1 v))) |
(*.f64 (*.f64 v e) (+.f64 (*.f64 e e) (-.f64 1 e))) |
(*.f64 e (-.f64 (+.f64 1 (/.f64 v (+.f64 e 1))) 1)) |
(-.f64 (+.f64 1 (*.f64 e (/.f64 v (+.f64 e 1)))) 1) |
| Outputs |
|---|
(/.f64 (*.f64 v e) (+.f64 1 e)) |
2 calls:
| 16.0ms | e |
| 15.0ms | v |
| Error | Segments | Branch |
|---|---|---|
| 28.0b | 1 | e |
| 28.0b | 1 | v |
Compiled 224 to 113 computations (49.6% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
| Outputs |
|---|
(*.f64 e (/.f64 v (+.f64 e 1))) |
2 calls:
| 9.0ms | e |
| 7.0ms | v |
| Error | Segments | Branch |
|---|---|---|
| 28.0b | 1 | e |
| 28.0b | 1 | v |
Compiled 82 to 36 computations (56.1% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 1 (/.f64 1 (*.f64 v e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(/.f64 e (/.f64 (+.f64 e 1) v)) |
| Outputs |
|---|
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
2 calls:
| 7.0ms | e |
| 7.0ms | v |
| Error | Segments | Branch |
|---|---|---|
| 28.0b | 1 | e |
| 28.0b | 1 | v |
Compiled 75 to 32 computations (57.3% saved)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v (-.f64 1 (/.f64 1 e))) |
| Outputs |
|---|
(*.f64 v (-.f64 e (*.f64 e e))) |
2 calls:
| 6.0ms | v |
| 5.0ms | e |
| Error | Segments | Branch |
|---|---|---|
| 28.3b | 1 | e |
| 28.3b | 1 | v |
Compiled 40 to 19 computations (52.5% saved)
Total -34.4b remaining (-121.4%)
Threshold costs -34.4b (-121.4%)
| Inputs |
|---|
v |
(*.f64 v e) |
(/.f64 (neg.f64 v) e) |
(-.f64 v (/.f64 v e)) |
(-.f64 v (/.f64 v e)) |
| Outputs |
|---|
(*.f64 v e) |
2 calls:
| 6.0ms | e |
| 5.0ms | v |
| Error | Segments | Branch |
|---|---|---|
| 28.4b | 1 | e |
| 28.4b | 1 | v |
Compiled 26 to 11 computations (57.7% saved)
| 1× | egg-herbie |
| 7× | +-commutative_binary64 |
| 7× | *-commutative_binary64 |
| 3× | sub-neg_binary64 |
| 2× | neg-sub0_binary64 |
| 2× | neg-mul-1_binary64 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 27 | 106 |
| 1 | 42 | 106 |
| 2 | 49 | 106 |
| 3 | 53 | 106 |
| 4 | 55 | 106 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(*.f64 (sin.f64 v) e) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v e) |
v |
| Outputs |
|---|
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 (*.f64 e (cos.f64 v)))) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) (cos.f64 v))) |
(/.f64 (sin.f64 v) (+.f64 (cos.f64 v) (/.f64 1 e))) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 1 e)) |
(/.f64 (*.f64 e (sin.f64 v)) (+.f64 e 1)) |
(/.f64 (sin.f64 v) (+.f64 (/.f64 1 e) 1)) |
(/.f64 (sin.f64 v) (+.f64 1 (/.f64 1 e))) |
(*.f64 (sin.f64 v) e) |
(*.f64 e (sin.f64 v)) |
(/.f64 (*.f64 v e) (+.f64 1 e)) |
(/.f64 (*.f64 e v) (+.f64 e 1)) |
(*.f64 e (/.f64 v (+.f64 e 1))) |
(/.f64 v (+.f64 (/.f64 1 e) 1)) |
(/.f64 v (+.f64 1 (/.f64 1 e))) |
(*.f64 v (-.f64 e (*.f64 e e))) |
(*.f64 v e) |
(*.f64 e v) |
v |
Compiled 94 to 65 computations (30.9% saved)
Compiled 74 to 37 computations (50% saved)
Loading profile data...