Time bar (total: 3.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 0 |
| 100% | 99.6% | 0% | 0.4% | 0% | 0% | 0% | 1 |
Compiled 4 to 3 computations (25% saved)
| 1.0s | 8256× | body | 256 | valid |
| 2× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 4 | 5 |
| 0 | 1 | 1 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
| Outputs |
|---|
0 |
| Inputs |
|---|
(asinh.f32 x) |
| Outputs |
|---|
(asinh.f32 x) |
Compiled 14 to 10 computations (28.6% saved)
| 1× | egg-herbie |
| 4× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 37 |
| 1 | 14 | 37 |
| 1× | saturated |
| Inputs |
|---|
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
Compiled 13 to 9 computations (30.8% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 1 | 1 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 0 | 2 | 2 |
| Status | Error | Program |
|---|---|---|
| ▶ | 20.0b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
Compiled 13 to 9 computations (30.8% saved)
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f32 x x) |
| ✓ | 0.0b | (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
| ✓ | 7.0b | (sqrt.f32 (+.f32 (*.f32 x x) 1)) |
| ✓ | 11.8b | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
Compiled 50 to 24 computations (52% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | 0 | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
| 1.0ms | x | @ | inf | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
| 0.0ms | x | @ | -inf | (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
| 0.0ms | x | @ | 0 | (*.f32 x x) |
| 0.0ms | x | @ | inf | (*.f32 x x) |
| 1× | batch-egg-rewrite |
| 28× | rational.json-simplify-1 |
| 28× | bool.json-1 |
| 24× | rational.json-1 |
| 24× | rational.json-2 |
| 24× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 11 | 82 |
| 1 | 49 | 82 |
| 2 | 78 | 82 |
| 3 | 83 | 82 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
(sqrt.f32 (+.f32 (*.f32 x x) 1)) |
(+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
(*.f32 x x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (sqrt.f32 (+.f32 (*.f32 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (sqrt.f32 (+.f32 (*.f32 x x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (sqrt.f32 (+.f32 (*.f32 x x) 1)) (sqrt.f32 (+.f32 (*.f32 x x) 1))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 x x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 x x))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f32 x x) (*.f32 x x)))))) |
| 1× | egg-herbie |
| 956× | rational.json-simplify-27 |
| 934× | rational.json-simplify-1 |
| 712× | rational.json-simplify-41 |
| 608× | rational.json-simplify-33 |
| 554× | rational.json-simplify-40 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 141 | 2158 |
| 1 | 276 | 2158 |
| 2 | 483 | 2158 |
| 3 | 900 | 2122 |
| 4 | 1590 | 2122 |
| 5 | 2618 | 2118 |
| 6 | 3224 | 2118 |
| 7 | 3373 | 2118 |
| 8 | 3505 | 2118 |
| 9 | 3580 | 2118 |
| 10 | 3588 | 2118 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 45 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 45 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) (pow.f32 x 6))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 -3 (fabs.f32 x)) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)))) |
(*.f32 -1 (log.f32 (/.f32 -1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 -1 (/.f32 (fabs.f32 x) x)) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 -3 (fabs.f32 x))) (pow.f32 x 3)))))) |
1 |
(+.f32 1 (*.f32 1/2 (pow.f32 x 2))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))))) |
x |
(+.f32 (*.f32 1/2 (/.f32 1 x)) x) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) x) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 x 5))) x)) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(*.f32 -1 x) |
(-.f32 (*.f32 -1 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 -1 x)) (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) |
(+.f32 1 (fabs.f32 x)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
x |
(+.f32 (fabs.f32 x) x) |
(+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x)) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x)) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(*.f32 -1 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 (fabs.f32 x) (*.f32 -1 x))) (*.f32 1/2 (/.f32 1 x))) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 1) |
(+.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 0) |
(+.f32 0 (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
(*.f32 1 (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
(*.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 1) |
(*.f32 1 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
(*.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) 1) |
(+.f32 (*.f32 x x) 0) |
(+.f32 0 (*.f32 x x)) |
| Outputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 45 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 45 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) (pow.f32 x 6))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3)))) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45)) (*.f32 1/720 (pow.f32 x 6))))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45) (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))))) (*.f32 1/720 (pow.f32 x 6))))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45))) (*.f32 1/720 (pow.f32 x 6)))))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (*.f32 (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45))) (*.f32 1/720 (pow.f32 x 6)))))) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 x (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x))) |
(+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 x (fabs.f32 x))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) |
(+.f32 (/.f32 x (fabs.f32 x)) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (/.f32 x (fabs.f32 x)) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 -3 (fabs.f32 x)) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)))) |
(+.f32 (+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 x (fabs.f32 x))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3)))) |
(+.f32 (+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 x (fabs.f32 x)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (/.f32 x (fabs.f32 x)) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3)))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (+.f32 (/.f32 x (fabs.f32 x)) (*.f32 1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (/.f32 x (fabs.f32 x)) (*.f32 1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3)))))) |
(*.f32 -1 (log.f32 (/.f32 -1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 x (fabs.f32 x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 x (fabs.f32 x))))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 -1 (/.f32 (fabs.f32 x) x)) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 -3 (fabs.f32 x))) (pow.f32 x 3)))))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3))))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 (fabs.f32 x) -3) (*.f32 2 (pow.f32 (fabs.f32 x) 3))) (pow.f32 x 3)))))) |
1 |
(+.f32 1 (*.f32 1/2 (pow.f32 x 2))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 (+.f32 1 (*.f32 1/2 (pow.f32 x 2))) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))))) |
(+.f32 1 (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (+.f32 (+.f32 1 (*.f32 1/2 (pow.f32 x 2))) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 (pow.f32 x 6) 1/16)))) |
x |
(+.f32 (*.f32 1/2 (/.f32 1 x)) x) |
(+.f32 x (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) x) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 (+.f32 x (*.f32 1/2 (/.f32 1 x))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 x (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 x (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 -1/8 (/.f32 1 (pow.f32 x 3))))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 x 5))) x)) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 x (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 (+.f32 x (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(+.f32 (-.f32 (+.f32 x (*.f32 1/2 (/.f32 1 x))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) (*.f32 1/16 (/.f32 1 (pow.f32 x 5)))) |
(+.f32 (*.f32 1/2 (/.f32 1 x)) (-.f32 (+.f32 x (*.f32 1/16 (/.f32 1 (pow.f32 x 5)))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3))))) |
(+.f32 x (+.f32 (*.f32 1/16 (/.f32 1 (pow.f32 x 5))) (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 -1/8 (/.f32 1 (pow.f32 x 3)))))) |
(*.f32 -1 x) |
(*.f32 x -1) |
(neg.f32 x) |
(-.f32 (*.f32 -1 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (*.f32 x -1) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (*.f32 (/.f32 1 x) -1/2) x) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 x -1)) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (-.f32 (*.f32 x -1) (*.f32 1/2 (/.f32 1 x))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (-.f32 (*.f32 x -1) (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) x)) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (-.f32 (*.f32 (/.f32 1 x) -1/2) x)) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 -1 x)) (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 x -1)) (+.f32 (*.f32 1/2 (/.f32 1 x)) (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) |
(+.f32 (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 x (*.f32 1/16 (/.f32 1 (pow.f32 x 5))))) (*.f32 (/.f32 1 x) -1/2)) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (-.f32 (-.f32 (*.f32 (/.f32 1 (pow.f32 x 5)) -1/16) (*.f32 1/2 (/.f32 1 x))) x)) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 (-.f32 (*.f32 (/.f32 1 x) -1/2) x) (*.f32 (/.f32 1 (pow.f32 x 5)) -1/16))) |
(+.f32 1 (fabs.f32 x)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))) |
(+.f32 (+.f32 1 (fabs.f32 x)) (*.f32 1/2 (pow.f32 x 2))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x)))) |
(+.f32 (+.f32 1 (*.f32 1/2 (pow.f32 x 2))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 1 (+.f32 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2))) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 1 (+.f32 (fabs.f32 x) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(+.f32 1 (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 (+.f32 1 (*.f32 1/2 (pow.f32 x 2))) (+.f32 (+.f32 (*.f32 (pow.f32 x 6) 1/16) (fabs.f32 x)) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (*.f32 (pow.f32 x 4) -1/8)) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)))) |
(+.f32 (fabs.f32 x) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 (pow.f32 x 6) 1/16))))) |
x |
(+.f32 (fabs.f32 x) x) |
(+.f32 x (fabs.f32 x)) |
(+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 x (fabs.f32 x))) |
(+.f32 x (+.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x)) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(-.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 x (fabs.f32 x))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(+.f32 (fabs.f32 x) (-.f32 x (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 1/2 (/.f32 1 x))))) |
(+.f32 x (-.f32 (fabs.f32 x) (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 1/2 (/.f32 1 x))))) |
(+.f32 x (-.f32 (fabs.f32 x) (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 (/.f32 1 x) -1/2)))) |
(*.f32 -1 x) |
(*.f32 x -1) |
(neg.f32 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(+.f32 (fabs.f32 x) (*.f32 x -1)) |
(+.f32 (fabs.f32 x) (neg.f32 x)) |
(-.f32 (fabs.f32 x) x) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 x -1)) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (-.f32 (*.f32 (/.f32 1 x) -1/2) x)) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x) |
(+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 (fabs.f32 x) (*.f32 -1 x))) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 (fabs.f32 x) (*.f32 x -1))) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 x -1)) (*.f32 1/2 (/.f32 1 x))) (*.f32 1/8 (/.f32 1 (pow.f32 x 3)))) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (-.f32 (+.f32 (fabs.f32 x) (*.f32 x -1)) (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (fabs.f32 x) (-.f32 x (-.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (*.f32 1/2 (/.f32 1 x))))) |
(+.f32 (*.f32 1/8 (/.f32 1 (pow.f32 x 3))) (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(pow.f32 x 2) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 0) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x))))) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x))))) 0) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x)))))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) 1) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x)))))) |
(+.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 0) |
(+.f32 (sqrt.f32 (+.f32 1 (*.f32 x x))) 0) |
(+.f32 0 (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
(+.f32 (sqrt.f32 (+.f32 1 (*.f32 x x))) 0) |
(*.f32 1 (sqrt.f32 (+.f32 (*.f32 x x) 1))) |
(*.f32 1 (sqrt.f32 (+.f32 1 (*.f32 x x)))) |
(*.f32 (sqrt.f32 (+.f32 (*.f32 x x) 1)) 1) |
(*.f32 1 (sqrt.f32 (+.f32 1 (*.f32 x x)))) |
(*.f32 1 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) |
(*.f32 1 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x))))) |
(*.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1))) 1) |
(*.f32 1 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 1 (*.f32 x x))))) |
(+.f32 (*.f32 x x) 0) |
(+.f32 0 (*.f32 x x)) |
(+.f32 (*.f32 x x) 0) |
Compiled 3000 to 2109 computations (29.7% saved)
14 alts after pruning (13 fresh and 1 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 117 | 13 | 130 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 0 | 0 |
| Total | 117 | 14 | 131 |
| Status | Error | Program |
|---|---|---|
| 27.9b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) | |
| ▶ | 27.3b | (copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
| ▶ | 27.2b | (copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) x) |
| 27.1b | (copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) x) | |
| 27.6b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) | |
| ▶ | 27.4b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
| 22.7b | (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) | |
| ▶ | 22.8b | (copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
| 27.9b | (copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) | |
| 23.0b | (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) | |
| ✓ | 20.0b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| 23.1b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) | |
| ▶ | 21.7b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
| 26.3b | (copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
Compiled 421 to 315 computations (25.2% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 11.8b | (log.f32 (+.f32 (fabs.f32 x) 1)) |
Compiled 21 to 12 computations (42.9% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 105.0ms | x | @ | inf | (log.f32 (+.f32 (fabs.f32 x) 1)) |
| 20.0ms | x | @ | 0 | (log.f32 (+.f32 (fabs.f32 x) 1)) |
| 10.0ms | x | @ | -inf | (log.f32 (+.f32 (fabs.f32 x) 1)) |
| 1× | batch-egg-rewrite |
| 22× | bool.json-1 |
| 20× | rational.json-simplify-1 |
| 18× | rational.json-1 |
| 18× | rational.json-2 |
| 18× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 15 |
| 1 | 36 | 15 |
| 2 | 59 | 15 |
| 3 | 64 | 15 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 (fabs.f32 x) 1)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 (fabs.f32 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 (fabs.f32 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 (fabs.f32 x) 1)) (log.f32 (+.f32 (fabs.f32 x) 1))))))) |
| 1× | egg-herbie |
| 4× | rational.json-simplify-1 |
| 2× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 264 |
| 1 | 15 | 264 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) 1))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) 1))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 1) |
| Outputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 0) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) 1))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) 1))) |
(*.f32 1 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) 1) |
(*.f32 1 (log.f32 (+.f32 1 (fabs.f32 x)))) |
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (log.f32 (/.f32 -1 x)) |
Compiled 24 to 18 computations (25% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 25.0ms | x | @ | -inf | (log.f32 (/.f32 -1 x)) |
| 23.0ms | x | @ | 0 | (log.f32 (/.f32 -1 x)) |
| 6.0ms | x | @ | inf | (log.f32 (/.f32 -1 x)) |
| 1× | batch-egg-rewrite |
| 22× | bool.json-1 |
| 16× | rational.json-1 |
| 16× | rational.json-2 |
| 16× | rational.json-simplify-2 |
| 16× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 11 |
| 1 | 32 | 11 |
| 2 | 56 | 11 |
| 3 | 60 | 11 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (/.f32 -1 x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 -1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (/.f32 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (/.f32 -1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (/.f32 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (/.f32 -1 x)) (log.f32 (/.f32 -1 x))))))) |
| 1× | egg-herbie |
| 6× | rational.json-simplify-1 |
| 4× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 236 |
| 1 | 23 | 236 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) 0) |
(+.f32 0 (log.f32 (/.f32 -1 x))) |
(*.f32 (log.f32 (/.f32 -1 x)) 1) |
(*.f32 1 (log.f32 (/.f32 -1 x))) |
| Outputs |
|---|
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 -1) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 -1) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 -1) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 1 x)) (log.f32 -1)) |
(+.f32 (log.f32 -1) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 -1 x)) 0) |
(+.f32 0 (log.f32 (/.f32 -1 x))) |
(+.f32 (log.f32 (/.f32 -1 x)) 0) |
(*.f32 (log.f32 (/.f32 -1 x)) 1) |
(*.f32 1 (log.f32 (/.f32 -1 x))) |
(*.f32 1 (log.f32 (/.f32 -1 x))) |
Compiled 20 to 5 computations (75% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
| ✓ | 0.0b | (log.f32 (/.f32 1 x)) |
Compiled 47 to 28 computations (40.4% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 6.0ms | x | @ | 0 | (log.f32 (/.f32 1 x)) |
| 0.0ms | x | @ | -inf | (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
| 0.0ms | x | @ | 0 | (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
| 0.0ms | x | @ | inf | (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
| 0.0ms | x | @ | -inf | (log.f32 (/.f32 1 x)) |
| 1× | batch-egg-rewrite |
| 30× | bool.json-1 |
| 26× | rational.json-simplify-2 |
| 26× | rational.json-simplify-1 |
| 24× | rational.json-1 |
| 24× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 44 |
| 1 | 54 | 44 |
| 2 | 83 | 44 |
| 3 | 88 | 44 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (/.f32 1 x)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 1 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (/.f32 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (/.f32 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (/.f32 1 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (/.f32 1 x)) (log.f32 (/.f32 1 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x))) (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x)))))))) |
| 1× | egg-herbie |
| 10× | rational.json-simplify-2 |
| 10× | rational.json-simplify-1 |
| 2× | rational.json-simplify-15 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 521 |
| 1 | 38 | 521 |
| 1× | saturated |
| Inputs |
|---|
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(/.f32 (fabs.f32 x) x) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 (/.f32 1 x)) 0) |
(+.f32 0 (log.f32 (/.f32 1 x))) |
(*.f32 1 (log.f32 (/.f32 1 x))) |
(*.f32 (log.f32 (/.f32 1 x)) 1) |
(*.f32 1 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x)))) |
(*.f32 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x))) 1) |
| Outputs |
|---|
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(*.f32 -1 (log.f32 x)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)) |
(/.f32 (fabs.f32 x) x) |
(/.f32 x (fabs.f32 x)) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) |
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
(+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)))) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)))) |
(+.f32 (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (+.f32 (log.f32 (/.f32 -1 x)) (log.f32 -1)))) |
(+.f32 (log.f32 (/.f32 1 x)) 0) |
(+.f32 0 (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 1 x)) 0) |
(*.f32 1 (log.f32 (/.f32 1 x))) |
(*.f32 (log.f32 (/.f32 1 x)) 1) |
(*.f32 1 (log.f32 (/.f32 1 x))) |
(*.f32 1 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x)))) |
(*.f32 1 (+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (log.f32 (/.f32 1 x))))) |
(*.f32 (+.f32 (*.f32 (log.f32 (/.f32 1 x)) -1) (/.f32 x (fabs.f32 x))) 1) |
(*.f32 1 (+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (log.f32 (/.f32 1 x))))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (pow.f32 x 2) |
| ✓ | 0.0b | (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
| ✓ | 7.0b | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
| ✓ | 11.8b | (log.f32 (+.f32 1 (fabs.f32 x))) |
Compiled 71 to 47 computations (33.8% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 11.0ms | x | @ | -inf | (log.f32 (+.f32 1 (fabs.f32 x))) |
| 1.0ms | x | @ | inf | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
| 1.0ms | x | @ | -inf | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
| 0.0ms | x | @ | 0 | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
| 0.0ms | x | @ | inf | (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
| 1× | batch-egg-rewrite |
| 34× | bool.json-1 |
| 30× | rational.json-simplify-1 |
| 28× | rational.json-simplify-2 |
| 26× | rational.json-1 |
| 26× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 14 | 94 |
| 1 | 62 | 94 |
| 2 | 93 | 94 |
| 3 | 99 | 94 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(pow.f32 x 2) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 1 (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 1 (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 1 (fabs.f32 x))) (log.f32 (+.f32 1 (fabs.f32 x)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2)) (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (pow.f32 x 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (pow.f32 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (pow.f32 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 x 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (pow.f32 x 2) (pow.f32 x 2)))))) |
| 1× | egg-herbie |
| 10× | rational.json-simplify-2 |
| 10× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 435 |
| 1 | 32 | 435 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0) |
(+.f32 0 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(*.f32 1 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(*.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 1) |
(+.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 0) |
(+.f32 0 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 1 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1) |
(*.f32 1 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2))) |
(*.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2)) 1) |
(+.f32 (pow.f32 x 2) 0) |
(+.f32 0 (pow.f32 x 2)) |
(*.f32 1 (pow.f32 x 2)) |
(*.f32 (pow.f32 x 2) 1) |
| Outputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0) |
(+.f32 0 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 0) |
(*.f32 1 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(*.f32 (log.f32 (+.f32 1 (fabs.f32 x))) 1) |
(*.f32 1 (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 0) |
(+.f32 0 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(+.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 0) |
(*.f32 1 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1) |
(*.f32 1 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
(*.f32 1 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2))) |
(*.f32 1 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))))) |
(*.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) 1/2)) 1) |
(*.f32 1 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (pow.f32 x 2) 0) |
(+.f32 0 (pow.f32 x 2)) |
(+.f32 (pow.f32 x 2) 0) |
(*.f32 1 (pow.f32 x 2)) |
(*.f32 (pow.f32 x 2) 1) |
(*.f32 1 (pow.f32 x 2)) |
Compiled 669 to 445 computations (33.5% saved)
15 alts after pruning (10 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 45 | 3 | 48 |
| Fresh | 1 | 7 | 8 |
| Picked | 0 | 1 | 1 |
| Done | 1 | 4 | 5 |
| Total | 47 | 15 | 62 |
| Status | Error | Program |
|---|---|---|
| ▶ | 26.8b | (copysign.f32 (/.f32 (fabs.f32 x) x) x) |
| 27.9b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) | |
| ✓ | 27.3b | (copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
| 27.2b | (copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) | |
| ▶ | 28.7b | (copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
| 27.6b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) | |
| ✓ | 27.4b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
| ▶ | 22.7b | (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
| ✓ | 22.8b | (copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
| 27.9b | (copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) | |
| 23.0b | (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) | |
| ✓ | 20.0b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| ▶ | 23.1b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
| ✓ | 21.7b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
| ▶ | 26.3b | (copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
Compiled 377 to 279 computations (26% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) |
| ✓ | 0.0b | (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) |
| ✓ | 3.6b | (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x) |
Compiled 56 to 36 computations (35.7% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | 0 | (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) |
| 0.0ms | x | @ | inf | (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) |
| 0.0ms | x | @ | 0 | (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x) |
| 0.0ms | x | @ | inf | (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x) |
| 0.0ms | x | @ | -inf | (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) |
| 1× | batch-egg-rewrite |
| 104× | bool.json-1 |
| 94× | rational.json-1 |
| 94× | rational.json-2 |
| 84× | rational.json-simplify-2 |
| 80× | rational.json-simplify-27 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 85 |
| 1 | 57 | 85 |
| 2 | 112 | 85 |
| 3 | 195 | 85 |
| 4 | 316 | 85 |
| 5 | 421 | 85 |
| 6 | 449 | 85 |
| 7 | 464 | 85 |
| 8 | 465 | 85 |
| 1× | saturated |
| Inputs |
|---|
(-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x) |
(+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) |
(log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (fabs.f32 x) (-.f32 (*.f32 (/.f32 1 x) -1/2) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) (neg.f32 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (neg.f32 x) (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (fabs.f32 x) x) (*.f32 (/.f32 1 x) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (-.f32 (*.f32 (/.f32 1 x) -1/2) x) (fabs.f32 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (*.f32 (/.f32 1 x) -1/2) (neg.f32 (fabs.f32 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 0 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 -1 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))))))) |
| 1× | egg-herbie |
| 614× | rational.json-simplify-1 |
| 598× | rational.json-simplify-33 |
| 272× | rational.json-simplify-2 |
| 226× | rational.json-simplify-31 |
| 114× | rational.json-simplify-29 |
Useful iterations: 6 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 122 | 2102 |
| 1 | 235 | 2102 |
| 2 | 394 | 2102 |
| 3 | 737 | 2102 |
| 4 | 1203 | 2102 |
| 5 | 1360 | 2102 |
| 6 | 1461 | 2090 |
| 7 | 1539 | 2090 |
| 8 | 1545 | 2090 |
| 9 | 1550 | 2090 |
| 10 | 1552 | 2090 |
| 1× | saturated |
| Inputs |
|---|
(/.f32 -1/2 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(*.f32 -1 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(*.f32 -1 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(/.f32 -1/2 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(fabs.f32 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(fabs.f32 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (*.f32 -1 (log.f32 x)))) |
(+.f32 (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (*.f32 -1 (log.f32 x))))) |
(+.f32 (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (+.f32 (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 24 (fabs.f32 x))) (pow.f32 x 3))) (*.f32 -1 (log.f32 x)))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x))))) |
(+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 3 (fabs.f32 x))) (pow.f32 x 3))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x)))))) |
(*.f32 -1 (log.f32 (/.f32 -1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 -1 (/.f32 (fabs.f32 x) x)) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 -3 (fabs.f32 x))) (pow.f32 x 3)))))) |
(+.f32 (fabs.f32 x) (-.f32 (*.f32 (/.f32 1 x) -1/2) x)) |
(+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) |
(+.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) (neg.f32 x)) |
(+.f32 0 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) |
(+.f32 (neg.f32 x) (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2))) |
(+.f32 (-.f32 (fabs.f32 x) x) (*.f32 (/.f32 1 x) -1/2)) |
(+.f32 (-.f32 (*.f32 (/.f32 1 x) -1/2) x) (fabs.f32 x)) |
(+.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 0) |
(*.f32 1 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) |
(*.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2)) -1) |
(*.f32 -1 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2))) |
(*.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 1) |
(neg.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2))) |
(-.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) 1/2)) |
(-.f32 (*.f32 (/.f32 1 x) -1/2) (neg.f32 (fabs.f32 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 0) |
(-.f32 0 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(*.f32 1 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2))) |
(*.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 1) |
(*.f32 -1 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(*.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)) -1) |
(neg.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(+.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 0) |
(+.f32 0 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))) |
(*.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 1) |
| Outputs |
|---|
(/.f32 -1/2 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 -1 x) |
(neg.f32 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(-.f32 (fabs.f32 x) x) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 -1 x) |
(neg.f32 x) |
(+.f32 (fabs.f32 x) (*.f32 -1 x)) |
(-.f32 (fabs.f32 x) x) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 -1 x)) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(/.f32 -1/2 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(fabs.f32 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(fabs.f32 x) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (*.f32 -1 (log.f32 x)))) |
(+.f32 (+.f32 (log.f32 -1/2) (*.f32 (fabs.f32 x) (*.f32 -2 x))) (*.f32 -1 (log.f32 x))) |
(+.f32 (*.f32 -1 (log.f32 x)) (+.f32 (log.f32 -1/2) (*.f32 x (*.f32 -2 (fabs.f32 x))))) |
(+.f32 (log.f32 -1/2) (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 x (*.f32 (fabs.f32 x) -2)))) |
(+.f32 (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (*.f32 -1 (log.f32 x))))) |
(+.f32 (+.f32 (+.f32 (log.f32 -1/2) (*.f32 (fabs.f32 x) (*.f32 -2 x))) (*.f32 -1 (log.f32 x))) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) |
(+.f32 (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 x (*.f32 -2 (fabs.f32 x)))) (+.f32 (log.f32 -1/2) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 x (*.f32 (fabs.f32 x) -2)))) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) |
(+.f32 (*.f32 x (*.f32 (fabs.f32 x) -2)) (+.f32 (+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -2 (*.f32 (fabs.f32 x) x)) (+.f32 (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 24 (fabs.f32 x))) (pow.f32 x 3))) (*.f32 -1 (log.f32 x)))))) |
(+.f32 (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (+.f32 (log.f32 -1/2) (*.f32 (fabs.f32 x) (*.f32 -2 x))) (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 24)) (pow.f32 x 3)))))) |
(+.f32 (+.f32 (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 x (*.f32 -2 (fabs.f32 x)))) (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 24)) (pow.f32 x 3)))) (+.f32 (log.f32 -1/2) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (+.f32 (+.f32 (log.f32 -1/2) (+.f32 (*.f32 -1 (log.f32 x)) (*.f32 x (*.f32 (fabs.f32 x) -2)))) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 24)) (pow.f32 x 3)))) |
(+.f32 (+.f32 (*.f32 x (*.f32 (fabs.f32 x) -2)) (+.f32 (+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) (*.f32 1/2 (*.f32 (+.f32 4 (*.f32 -4 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) (*.f32 1/6 (*.f32 (+.f32 (*.f32 -16 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 24)) (pow.f32 x 3)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) (*.f32 -1 (/.f32 x (fabs.f32 x)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 x (fabs.f32 x))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) (neg.f32 x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x))))) |
(+.f32 (+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) |
(+.f32 (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) (neg.f32 x))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 3 (fabs.f32 x))) (pow.f32 x 3))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 (fabs.f32 x) x)))))) |
(+.f32 (+.f32 (+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2)))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 3)) (pow.f32 x 3)))) |
(+.f32 (+.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (log.f32 -1)) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 3)) (pow.f32 x 3))))) |
(+.f32 (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (+.f32 (+.f32 (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 3)) (pow.f32 x 3))) (*.f32 -1 (log.f32 (/.f32 1 x)))) (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))))) |
(+.f32 (+.f32 (log.f32 -1) (*.f32 -1 (/.f32 x (fabs.f32 x)))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 3)) (pow.f32 x 3)))))) |
(+.f32 (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) (neg.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (*.f32 1/6 (/.f32 (+.f32 (*.f32 -2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) 3)) (pow.f32 x 3)))))) |
(*.f32 -1 (log.f32 (/.f32 -1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (*.f32 -1 (log.f32 (/.f32 -1 x)))) |
(+.f32 (/.f32 (fabs.f32 x) (neg.f32 x)) (*.f32 -1 (log.f32 (/.f32 -1 x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x)))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (*.f32 -1 (log.f32 (/.f32 -1 x))))) |
(+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (*.f32 -1 (log.f32 (/.f32 -1 x))))) |
(+.f32 (/.f32 (fabs.f32 x) (neg.f32 x)) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (*.f32 -1 (log.f32 (/.f32 -1 x))))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 -1 (/.f32 (fabs.f32 x) x)) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 -3 (fabs.f32 x))) (pow.f32 x 3)))))) |
(+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (*.f32 -1 (log.f32 (/.f32 -1 x)))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) -3)) (pow.f32 x 3))))) |
(+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (+.f32 (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) -3)) (pow.f32 x 3))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (*.f32 -1 (log.f32 (/.f32 -1 x)))))) |
(+.f32 (*.f32 -1 (/.f32 x (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) -3)) (pow.f32 x 3)))))) |
(+.f32 (/.f32 (fabs.f32 x) (neg.f32 x)) (+.f32 (*.f32 1/2 (/.f32 (+.f32 1 (*.f32 -1 (pow.f32 (fabs.f32 x) 2))) (pow.f32 x 2))) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1/6 (/.f32 (+.f32 (*.f32 2 (pow.f32 (fabs.f32 x) 3)) (*.f32 (fabs.f32 x) -3)) (pow.f32 x 3)))))) |
(+.f32 (fabs.f32 x) (-.f32 (*.f32 (/.f32 1 x) -1/2) x)) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) (neg.f32 x)) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 0 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (neg.f32 x) (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (-.f32 (fabs.f32 x) x) (*.f32 (/.f32 1 x) -1/2)) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (-.f32 (*.f32 (/.f32 1 x) -1/2) x) (fabs.f32 x)) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(+.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 0) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 1 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2)) -1) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 -1 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(*.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)) 1) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(neg.f32 (+.f32 (-.f32 x (fabs.f32 x)) (*.f32 (/.f32 1 x) 1/2))) |
(-.f32 (-.f32 (fabs.f32 x) x) (*.f32 1/2 (/.f32 1 x))) |
(-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))) |
(-.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) 1/2)) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (*.f32 (/.f32 1 x) -1/2) (neg.f32 (fabs.f32 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 0) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(-.f32 0 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(*.f32 1 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(*.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) 1) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(*.f32 -1 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(*.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x)) -1) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(neg.f32 (-.f32 (*.f32 (/.f32 1 x) 1/2) (fabs.f32 x))) |
(-.f32 (fabs.f32 x) (*.f32 1/2 (/.f32 1 x))) |
(+.f32 (fabs.f32 x) (*.f32 -1/2 (/.f32 1 x))) |
(+.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 0) |
(+.f32 0 (log.f32 (+.f32 (*.f32 -1/2 (/.f32 1 x)) (-.f32 (fabs.f32 x) x)))) |
(+.f32 0 (log.f32 (-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))))) |
(+.f32 0 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))) |
(+.f32 0 (log.f32 (+.f32 (*.f32 -1/2 (/.f32 1 x)) (-.f32 (fabs.f32 x) x)))) |
(+.f32 0 (log.f32 (-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x)))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 -1/2 (/.f32 1 x)) (-.f32 (fabs.f32 x) x)))) |
(*.f32 1 (log.f32 (-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))))) |
(*.f32 (log.f32 (+.f32 (*.f32 (/.f32 1 x) -1/2) (-.f32 (fabs.f32 x) x))) 1) |
(*.f32 1 (log.f32 (+.f32 (*.f32 -1/2 (/.f32 1 x)) (-.f32 (fabs.f32 x) x)))) |
(*.f32 1 (log.f32 (-.f32 (fabs.f32 x) (+.f32 x (*.f32 1/2 (/.f32 1 x)))))) |
Compiled 14 to 4 computations (71.4% saved)
Compiled 20 to 5 computations (75% saved)
Found 3 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
| 0.0b | (pow.f32 x 2) | |
| 7.0b | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) |
Compiled 44 to 29 computations (34.1% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
| 0.0ms | x | @ | -inf | (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
| 0.0ms | x | @ | 0 | (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
| 1× | batch-egg-rewrite |
| 30× | bool.json-1 |
| 24× | rational.json-simplify-2 |
| 24× | rational.json-simplify-1 |
| 22× | rational.json-1 |
| 22× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 12 | 29 |
| 1 | 53 | 29 |
| 2 | 80 | 29 |
| 3 | 86 | 29 |
| 1× | saturated |
| Inputs |
|---|
(*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))))))) |
| 1× | egg-herbie |
| 4× | rational.json-simplify-1 |
| 2× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 15 | 70 |
| 1 | 17 | 70 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) 0) |
(+.f32 0 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) |
| Outputs |
|---|
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) 0) |
(+.f32 0 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) 0) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| 0.0b | (pow.f32 x 2) | |
| ✓ | 0.0b | (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
| ✓ | 0.0b | (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) |
| ✓ | 19.4b | (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
Compiled 57 to 40 computations (29.8% saved)
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
| 1.0ms | x | @ | -inf | (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
| 0.0ms | x | @ | 0 | (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
| 0.0ms | x | @ | inf | (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) |
| 0.0ms | x | @ | 0 | (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) |
| 1× | batch-egg-rewrite |
| 42× | rational.json-simplify-1 |
| 38× | bool.json-1 |
| 30× | rational.json-1 |
| 30× | rational.json-2 |
| 28× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 13 | 85 |
| 1 | 60 | 85 |
| 2 | 96 | 85 |
| 3 | 112 | 85 |
| 4 | 116 | 85 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))))))) |
| 1× | egg-herbie |
| 406× | rational.json-simplify-1 |
| 374× | rational.json-simplify-33 |
| 24× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 68 | 1294 |
| 1 | 108 | 1294 |
| 2 | 173 | 1294 |
| 3 | 298 | 1294 |
| 4 | 437 | 1294 |
| 5 | 506 | 1294 |
| 6 | 509 | 1294 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 1/24 (/.f32 (pow.f32 x 6) (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (+.f32 (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 1 x)))) |
(+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))))) |
(+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))))) |
(+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (log.f32 1/2)) |
(+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))))) |
(+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))))) |
(fabs.f32 x) |
(*.f32 1/2 (pow.f32 x 2)) |
(*.f32 1/2 (pow.f32 x 2)) |
(+.f32 1 (fabs.f32 x)) |
(*.f32 1/2 (pow.f32 x 2)) |
(*.f32 1/2 (pow.f32 x 2)) |
(+.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 0) |
(+.f32 0 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))) |
(*.f32 1 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))) |
(*.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 1) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(*.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) 1) |
(*.f32 1 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
(*.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) 1) |
| Outputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) |
(+.f32 (*.f32 1/24 (/.f32 (pow.f32 x 6) (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (+.f32 (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 1/24 (/.f32 (pow.f32 x 6) (pow.f32 (+.f32 1 (fabs.f32 x)) 3)))) |
(+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) (*.f32 1/24 (/.f32 (pow.f32 x 6) (pow.f32 (+.f32 1 (fabs.f32 x)) 3)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/24 (/.f32 (pow.f32 x 6) (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))))) |
(+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 1 x)))) |
(+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) |
(+.f32 (+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 1 x)))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))))) |
(+.f32 (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4)))) |
(+.f32 (log.f32 1/2) (+.f32 (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))))) |
(+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4)))))) |
(+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))))) |
(+.f32 (+.f32 (+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4)))) (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6)))) |
(+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (+.f32 (+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (log.f32 1/2)) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4)))) (*.f32 -2 (log.f32 (/.f32 1 x))))) |
(+.f32 (log.f32 1/2) (+.f32 (+.f32 (+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (*.f32 -2 (log.f32 (/.f32 1 x)))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))))) |
(+.f32 (log.f32 1/2) (+.f32 (*.f32 -2 (log.f32 (/.f32 1 x))) (+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))))))) |
(+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (log.f32 1/2)) |
(+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 -1 x)))) |
(+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))) |
(+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 -1 x))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 -1 x)))))) |
(+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 -1 x)))))) |
(+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/2) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))))))) |
(+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (log.f32 1/2) (*.f32 -2 (log.f32 (/.f32 -1 x))))))) |
(+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (+.f32 (+.f32 (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))) (log.f32 1/2)) (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4)))) (*.f32 -2 (log.f32 (/.f32 -1 x))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (+.f32 (log.f32 1/2) (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6)))) (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2)))))) |
(+.f32 (*.f32 -2 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 2) (pow.f32 x 4))) (+.f32 (*.f32 -2 (log.f32 (/.f32 -1 x))) (+.f32 (*.f32 2 (/.f32 (+.f32 1 (fabs.f32 x)) (pow.f32 x 2))) (+.f32 (log.f32 1/2) (*.f32 8/3 (/.f32 (pow.f32 (+.f32 1 (fabs.f32 x)) 3) (pow.f32 x 6))))))) |
(fabs.f32 x) |
(*.f32 1/2 (pow.f32 x 2)) |
(*.f32 1/2 (pow.f32 x 2)) |
(+.f32 1 (fabs.f32 x)) |
(*.f32 1/2 (pow.f32 x 2)) |
(*.f32 1/2 (pow.f32 x 2)) |
(+.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 0) |
(+.f32 (log.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2))))) 0) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2))))) 0) |
(+.f32 0 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))) |
(+.f32 (log.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2))))) 0) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2))))) 0) |
(*.f32 1 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))))) |
(*.f32 1 (log.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))))) |
(*.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) 1) |
(*.f32 1 (log.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))))) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(*.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))) |
(*.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)) 1) |
(*.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))) |
(*.f32 1 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) |
(*.f32 1 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2))))) |
(*.f32 1 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2))))) |
(*.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) 1) |
(*.f32 1 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2))))) |
(*.f32 1 (+.f32 (fabs.f32 x) (+.f32 1 (*.f32 1/2 (pow.f32 x 2))))) |
Compiled 3580 to 2537 computations (29.1% saved)
16 alts after pruning (8 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 148 | 3 | 151 |
| Fresh | 0 | 5 | 5 |
| Picked | 0 | 1 | 1 |
| Done | 2 | 7 | 9 |
| Total | 150 | 16 | 166 |
| Status | Error | Program |
|---|---|---|
| ✓ | 26.8b | (copysign.f32 (/.f32 (fabs.f32 x) x) x) |
| ▶ | 27.9b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) |
| 27.8b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) x) | |
| ✓ | 27.3b | (copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
| ▶ | 27.2b | (copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
| ✓ | 28.7b | (copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
| 27.6b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) | |
| ▶ | 22.8b | (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
| ✓ | 22.7b | (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
| ▶ | 27.9b | (copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) |
| 23.0b | (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) | |
| ✓ | 20.0b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| ✓ | 23.1b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
| ✓ | 21.7b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
| ✓ | 26.3b | (copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
| ▶ | 27.4b | (copysign.f32 (log.f32 (neg.f32 x)) x) |
Compiled 394 to 293 computations (25.6% saved)
Found 2 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (/.f32 -1/2 x) |
| ✓ | 0.0b | (log.f32 (/.f32 -1/2 x)) |
Compiled 16 to 11 computations (31.3% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 15.0ms | x | @ | -inf | (log.f32 (/.f32 -1/2 x)) |
| 10.0ms | x | @ | 0 | (log.f32 (/.f32 -1/2 x)) |
| 5.0ms | x | @ | inf | (log.f32 (/.f32 -1/2 x)) |
| 0.0ms | x | @ | 0 | (/.f32 -1/2 x) |
| 0.0ms | x | @ | inf | (/.f32 -1/2 x) |
| 1× | batch-egg-rewrite |
| 22× | bool.json-1 |
| 16× | rational.json-1 |
| 16× | rational.json-2 |
| 16× | rational.json-simplify-2 |
| 16× | rational.json-simplify-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 7 | 18 |
| 1 | 32 | 18 |
| 2 | 56 | 18 |
| 3 | 60 | 18 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (/.f32 -1/2 x)) |
(/.f32 -1/2 x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (/.f32 -1/2 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (/.f32 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (/.f32 -1/2 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (/.f32 -1/2 x)))))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (/.f32 -1/2 x)) (log.f32 (/.f32 -1/2 x))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 -1/2 x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 -1/2 x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 -1/2 x))))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f32 -1/2 x) (/.f32 -1/2 x)))))) |
| 1× | egg-herbie |
| 10× | rational.json-simplify-1 |
| 6× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 30 | 372 |
| 1 | 34 | 372 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1/2 x)) 0) |
(+.f32 0 (log.f32 (/.f32 -1/2 x))) |
(*.f32 (log.f32 (/.f32 -1/2 x)) 1) |
(*.f32 1 (log.f32 (/.f32 -1/2 x))) |
(+.f32 (/.f32 -1/2 x) 0) |
(+.f32 0 (/.f32 -1/2 x)) |
(*.f32 (/.f32 -1/2 x) 1) |
(*.f32 1 (/.f32 -1/2 x)) |
| Outputs |
|---|
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (*.f32 -1 (log.f32 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 -1/2) (log.f32 (/.f32 1 x))) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1 x)) (log.f32 1/2)) |
(+.f32 (log.f32 (/.f32 -1/2 x)) 0) |
(+.f32 0 (log.f32 (/.f32 -1/2 x))) |
(+.f32 (log.f32 (/.f32 -1/2 x)) 0) |
(*.f32 (log.f32 (/.f32 -1/2 x)) 1) |
(*.f32 1 (log.f32 (/.f32 -1/2 x))) |
(*.f32 1 (log.f32 (/.f32 -1/2 x))) |
(+.f32 (/.f32 -1/2 x) 0) |
(+.f32 0 (/.f32 -1/2 x)) |
(+.f32 (/.f32 -1/2 x) 0) |
(*.f32 (/.f32 -1/2 x) 1) |
(*.f32 1 (/.f32 -1/2 x)) |
(*.f32 1 (/.f32 -1/2 x)) |
Compiled 12 to 4 computations (66.7% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
Compiled 26 to 6 computations (76.9% saved)
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | -inf | (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
| 0.0ms | x | @ | 0 | (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
| 0.0ms | x | @ | inf | (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
| 1× | batch-egg-rewrite |
| 24× | bool.json-1 |
| 22× | rational.json-simplify-1 |
| 20× | rational.json-1 |
| 20× | rational.json-2 |
| 20× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 21 |
| 1 | 38 | 21 |
| 2 | 66 | 21 |
| 3 | 70 | 21 |
| 1× | saturated |
| Inputs |
|---|
(+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x)))))))) |
| 1× | egg-herbie |
| 16× | rational.json-simplify-1 |
| 6× | rational.json-simplify-2 |
| 4× | rational.json-simplify-33 |
| 2× | rational.json-simplify-15 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 24 | 337 |
| 1 | 34 | 337 |
| 2 | 37 | 337 |
| 3 | 39 | 337 |
| 1× | saturated |
| Inputs |
|---|
(/.f32 (fabs.f32 x) x) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (log.f32 -1)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(*.f32 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) 1) |
(*.f32 1 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x)))) |
| Outputs |
|---|
(/.f32 (fabs.f32 x) x) |
(/.f32 x (fabs.f32 x)) |
(*.f32 -1 (log.f32 (/.f32 1 x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (log.f32 (/.f32 1 x)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (log.f32 (/.f32 1 x)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) |
(+.f32 (/.f32 x (fabs.f32 x)) (*.f32 -1 (log.f32 (/.f32 1 x)))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (log.f32 -1)) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (/.f32 x (fabs.f32 x)) (log.f32 -1))) |
(+.f32 (/.f32 x (fabs.f32 x)) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (log.f32 -1))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (/.f32 x (fabs.f32 x)) (log.f32 -1))) |
(+.f32 (/.f32 x (fabs.f32 x)) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (log.f32 -1))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 -1) (/.f32 (fabs.f32 x) x))) |
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (+.f32 (/.f32 x (fabs.f32 x)) (log.f32 -1))) |
(+.f32 (/.f32 x (fabs.f32 x)) (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (log.f32 -1))) |
(*.f32 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x))) 1) |
(*.f32 1 (+.f32 (/.f32 x (fabs.f32 x)) (log.f32 x))) |
(*.f32 1 (+.f32 (log.f32 x) (/.f32 x (fabs.f32 x)))) |
(*.f32 1 (+.f32 (/.f32 x (fabs.f32 x)) (log.f32 x))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)))) |
| ✓ | 0.2b | (*.f32 (pow.f32 x 4) -1/8) |
| ✓ | 8.0b | (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) |
| ✓ | 24.6b | (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) |
Compiled 137 to 106 computations (22.6% saved)
12 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | inf | (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) |
| 0.0ms | x | @ | -inf | (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) |
| 0.0ms | x | @ | 0 | (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) |
| 0.0ms | x | @ | inf | (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) |
| 0.0ms | x | @ | 0 | (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) |
| 1× | batch-egg-rewrite |
| 268× | rational.json-simplify-1 |
| 264× | rational.json-simplify-33 |
| 170× | bool.json-1 |
| 154× | rational.json-1 |
| 154× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 23 | 178 |
| 1 | 106 | 178 |
| 2 | 171 | 178 |
| 3 | 242 | 178 |
| 4 | 349 | 178 |
| 5 | 549 | 178 |
| 6 | 623 | 178 |
| 7 | 627 | 178 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) |
(*.f32 (pow.f32 x 4) -1/8) |
(+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)))) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (pow.f32 x 4) -1/8) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (pow.f32 x 4) -1/8))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 4) -1/8)))))) |
((#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))) (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))))))) |
| 1× | egg-herbie |
| 1672× | rational.json-simplify-27 |
| 1182× | rational.json-simplify-1 |
| 1086× | rational.json-simplify-29 |
| 968× | rational.json-simplify-33 |
| 892× | rational.json-simplify-34 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 111 | 2480 |
| 1 | 221 | 2480 |
| 2 | 409 | 2480 |
| 3 | 854 | 2480 |
| 4 | 1831 | 2480 |
| 5 | 3503 | 2480 |
| 6 | 3968 | 2480 |
| 7 | 4184 | 2480 |
| 8 | 4344 | 2480 |
| 9 | 4463 | 2480 |
| 10 | 4724 | 2480 |
| 11 | 5848 | 2480 |
| 12 | 5878 | 2480 |
| 13 | 5878 | 2480 |
| 14 | 5894 | 2480 |
| 15 | 5901 | 2480 |
| 16 | 5901 | 2480 |
| 1× | saturated |
| Inputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 45 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 45 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) (pow.f32 x 6))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) |
(-.f32 (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (log.f32 1/16)) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 11520 (+.f32 1 (fabs.f32 x)))) (pow.f32 x 6))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 -1 x)))) |
(-.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 -1 x)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (*.f32 -6 (log.f32 (/.f32 -1 x))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 11520 (+.f32 1 (fabs.f32 x)))) (pow.f32 x 6))) (+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (*.f32 -6 (log.f32 (/.f32 -1 x)))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(*.f32 -1/8 (pow.f32 x 4)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(*.f32 1/16 (pow.f32 x 6)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(*.f32 1/16 (pow.f32 x 6)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(+.f32 1 (fabs.f32 x)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(*.f32 1/16 (pow.f32 x 6)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(*.f32 1/16 (pow.f32 x 6)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 1) |
(*.f32 1 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))) |
(*.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) 1) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) 0) |
(+.f32 0 (*.f32 (pow.f32 x 4) -1/8)) |
(*.f32 1 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) |
(*.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))) 1) |
| Outputs |
|---|
(log.f32 (+.f32 1 (fabs.f32 x))) |
(+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x))))) |
(+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))))) |
(+.f32 (*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) (+.f32 (*.f32 1/720 (*.f32 (+.f32 (*.f32 45 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 45 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))) (pow.f32 x 6))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45))) (*.f32 1/720 (pow.f32 x 6))))) |
(+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))))) (*.f32 (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45))) (*.f32 1/720 (pow.f32 x 6)))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (+.f32 (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))) (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45))) (*.f32 1/720 (pow.f32 x 6)))))) |
(+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (+.f32 (*.f32 (+.f32 (*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 45) (+.f32 (*.f32 (/.f32 1 (+.f32 1 (fabs.f32 x))) 45) (*.f32 30 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 3))))) (*.f32 1/720 (pow.f32 x 6))) (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))))) |
(+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) |
(-.f32 (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (log.f32 1/16)) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (*.f32 (/.f32 1 (pow.f32 x 2)) -2))) |
(+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 (/.f32 1 (pow.f32 x 2)) -2))) |
(-.f32 (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (*.f32 (/.f32 1 (pow.f32 x 2)) -2)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 (/.f32 1 (pow.f32 x 4)) -6)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 -6 (/.f32 1 (pow.f32 x 4)))))) |
(-.f32 (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 11520 (+.f32 1 (fabs.f32 x)))) (pow.f32 x 6))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (+.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (-.f32 (+.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6)))) |
(+.f32 (-.f32 (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6)))) |
(-.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 1 x)))) (-.f32 (-.f32 (*.f32 2 (/.f32 1 (pow.f32 x 2))) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (*.f32 (/.f32 1 (pow.f32 x 2)) -2))))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 (/.f32 1 (pow.f32 x 4)) -6))))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 -6 (/.f32 1 (pow.f32 x 4))))))) |
(+.f32 (*.f32 -6 (log.f32 (/.f32 1 x))) (+.f32 (log.f32 1/16) (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 -6 (/.f32 1 (pow.f32 x 4))))))) |
(+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 -1 x)))) |
(-.f32 (+.f32 (log.f32 1/16) (*.f32 -6 (log.f32 (/.f32 -1 x)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (log.f32 1/16) (-.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (*.f32 2 (/.f32 1 (pow.f32 x 2))))) |
(+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/16) (*.f32 (/.f32 1 (pow.f32 x 2)) -2))) |
(-.f32 (+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (*.f32 -6 (log.f32 (/.f32 -1 x))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 -6 (log.f32 (/.f32 -1 x)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (-.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (*.f32 2 (/.f32 1 (pow.f32 x 2))))) |
(+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/16) (*.f32 (/.f32 1 (pow.f32 x 2)) -2)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 (/.f32 1 (pow.f32 x 4)) -6)))) |
(+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 -6 (/.f32 1 (pow.f32 x 4)))))) |
(-.f32 (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 11520 (+.f32 1 (fabs.f32 x)))) (pow.f32 x 6))) (+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (*.f32 -6 (log.f32 (/.f32 -1 x)))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(-.f32 (+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 -6 (log.f32 (/.f32 -1 x))))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) |
(+.f32 (-.f32 (+.f32 (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4)))) (*.f32 -6 (log.f32 (/.f32 -1 x)))) (*.f32 2 (/.f32 1 (pow.f32 x 2)))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6)))) |
(+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (-.f32 (+.f32 (log.f32 1/16) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (*.f32 -6 (log.f32 (/.f32 -1 x))))) (*.f32 2 (/.f32 1 (pow.f32 x 2))))) |
(-.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (-.f32 (-.f32 (*.f32 2 (/.f32 1 (pow.f32 x 2))) (+.f32 (log.f32 1/16) (*.f32 6 (/.f32 1 (pow.f32 x 4))))) (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))))) |
(+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (*.f32 6 (/.f32 1 (pow.f32 x 4))) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (+.f32 (log.f32 1/16) (*.f32 (/.f32 1 (pow.f32 x 2)) -2))))) |
(+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 (/.f32 1 (pow.f32 x 4)) -6))))) |
(+.f32 (*.f32 1/720 (/.f32 (+.f32 9600 (*.f32 (+.f32 1 (fabs.f32 x)) 11520)) (pow.f32 x 6))) (+.f32 (log.f32 1/16) (+.f32 (*.f32 -6 (log.f32 (/.f32 -1 x))) (-.f32 (*.f32 (/.f32 1 (pow.f32 x 2)) -2) (*.f32 -6 (/.f32 1 (pow.f32 x 4))))))) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(*.f32 1/16 (pow.f32 x 6)) |
(*.f32 (pow.f32 x 6) 1/16) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(*.f32 1/16 (pow.f32 x 6)) |
(*.f32 (pow.f32 x 6) 1/16) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(*.f32 -1/8 (pow.f32 x 4)) |
(*.f32 (pow.f32 x 4) -1/8) |
(+.f32 1 (fabs.f32 x)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x))) |
(+.f32 1 (+.f32 (fabs.f32 x) (*.f32 1/2 (pow.f32 x 2)))) |
(+.f32 (+.f32 1 (fabs.f32 x)) (*.f32 1/2 (pow.f32 x 2))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x)))) |
(+.f32 (+.f32 1 (*.f32 1/2 (pow.f32 x 2))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (*.f32 1/2 (pow.f32 x 2))) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(+.f32 1 (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))))) |
(*.f32 1/16 (pow.f32 x 6)) |
(*.f32 (pow.f32 x 6) 1/16) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(+.f32 1 (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))))) |
(*.f32 1/16 (pow.f32 x 6)) |
(*.f32 (pow.f32 x 6) 1/16) |
(+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (*.f32 -1/8 (pow.f32 x 4)))) |
(+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 1/16 (pow.f32 x 6)) (+.f32 (*.f32 -1/8 (pow.f32 x 4)) (fabs.f32 x))))) |
(+.f32 1 (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))) |
(+.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (*.f32 (pow.f32 x 4) -1/8)) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16))) |
(+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))))) |
(+.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 0) |
(+.f32 (log.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8)))) 0) |
(+.f32 (log.f32 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)))) 0) |
(+.f32 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16)))) 0) |
(+.f32 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))))) 0) |
(+.f32 0 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))) |
(+.f32 (log.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8)))) 0) |
(+.f32 (log.f32 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)))) 0) |
(+.f32 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16)))) 0) |
(+.f32 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))))) 0) |
(*.f32 1 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))))) |
(*.f32 1 (log.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8))))) |
(*.f32 1 (log.f32 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16))))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16))))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))))))) |
(*.f32 (log.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) 1) |
(*.f32 1 (log.f32 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8))))) |
(*.f32 1 (log.f32 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16))))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16))))) |
(*.f32 1 (log.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))))))) |
(*.f32 1 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))) |
(*.f32 1 (+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8))) |
(*.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16)) 1) |
(*.f32 1 (+.f32 (*.f32 (pow.f32 x 6) 1/16) (*.f32 (pow.f32 x 4) -1/8))) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) 0) |
(+.f32 0 (*.f32 (pow.f32 x 4) -1/8)) |
(+.f32 (*.f32 (pow.f32 x 4) -1/8) 0) |
(*.f32 1 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8)))))) |
(*.f32 1 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8)))) |
(*.f32 1 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)))) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16)))) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))))) |
(*.f32 (+.f32 (fabs.f32 x) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 1 (*.f32 (pow.f32 x 4) -1/8))))) 1) |
(*.f32 1 (+.f32 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)) (+.f32 (+.f32 (*.f32 1/2 (pow.f32 x 2)) 1) (*.f32 (pow.f32 x 4) -1/8)))) |
(*.f32 1 (+.f32 (+.f32 (*.f32 (pow.f32 x 4) -1/8) (+.f32 1 (*.f32 1/2 (pow.f32 x 2)))) (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 6) 1/16)))) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8))) (*.f32 (pow.f32 x 6) 1/16)))) |
(*.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 6) 1/16) (+.f32 1 (+.f32 (fabs.f32 x) (*.f32 (pow.f32 x 4) -1/8)))))) |
Found 4 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.6b | (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) |
| ✓ | 1.0b | (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
| 7.0b | (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))) | |
| 11.8b | (log.f32 (+.f32 1 (fabs.f32 x))) |
Compiled 232 to 172 computations (25.9% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | -inf | (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
| 2.0ms | x | @ | inf | (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
| 2.0ms | x | @ | 0 | (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
| 0.0ms | x | @ | 0 | (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) |
| 0.0ms | x | @ | inf | (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) |
| 1× | batch-egg-rewrite |
| 54× | rational.json-simplify-2 |
| 52× | bool.json-1 |
| 42× | rational.json-simplify-1 |
| 40× | rational.json-1 |
| 40× | rational.json-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 20 | 98 |
| 1 | 91 | 98 |
| 2 | 137 | 98 |
| 3 | 153 | 98 |
| 4 | 157 | 98 |
| 1× | saturated |
| Inputs |
|---|
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))))))) |
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x or (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))))))) |
| 1× | egg-herbie |
| 20× | rational.json-simplify-2 |
| 8× | rational.json-simplify-1 |
| 6× | rational.json-simplify-31 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 29 | 1178 |
| 1 | 37 | 1178 |
| 2 | 41 | 1178 |
| 3 | 43 | 1178 |
| 1× | saturated |
| Inputs |
|---|
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) 0) |
(+.f32 0 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) |
(+.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 0) |
(+.f32 0 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) |
(*.f32 1 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) |
(*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 1) |
| Outputs |
|---|
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(*.f32 -1/24 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (pow.f32 x 4))) |
(*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) 0) |
(+.f32 0 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) |
(+.f32 (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4))) 0) |
(+.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 0) |
(+.f32 0 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) |
(+.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 0) |
(*.f32 1 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) |
(*.f32 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)) 1) |
(*.f32 1 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2))) |
Compiled 3821 to 2974 computations (22.2% saved)
16 alts after pruning (3 fresh and 13 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 135 | 0 | 135 |
| Fresh | 0 | 3 | 3 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 12 | 12 |
| Total | 135 | 16 | 151 |
| Status | Error | Program |
|---|---|---|
| ✓ | 26.8b | (copysign.f32 (/.f32 (fabs.f32 x) x) x) |
| ✓ | 27.9b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) |
| 27.8b | (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) x) | |
| ✓ | 27.3b | (copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
| ✓ | 27.2b | (copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
| ✓ | 28.7b | (copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
| 27.6b | (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) | |
| ✓ | 22.8b | (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
| ✓ | 22.7b | (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
| ✓ | 27.9b | (copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) |
| 23.0b | (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) | |
| ✓ | 20.0b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| ✓ | 23.1b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
| ✓ | 21.7b | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
| ✓ | 26.3b | (copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
| ✓ | 27.4b | (copysign.f32 (log.f32 (neg.f32 x)) x) |
Compiled 245 to 181 computations (26.1% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
(copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
(copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
(copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) |
(copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) x) |
(copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
(copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
2 calls:
| 28.0ms | x |
| 13.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| Error | Segments | Branch |
|---|---|---|
| 11.8b | 3 | x |
| 11.8b | 3 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
Compiled 288 to 187 computations (35.1% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.6338362097740173 | 6.436204433441162 |
| 0.0ms | -1.613721251487732 | -0.19476823508739471 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
(copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
(copysign.f32 (log.f32 (+.f32 1 (+.f32 (*.f32 1/2 (pow.f32 x 2)) (fabs.f32 x)))) x) |
(copysign.f32 (+.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) (log.f32 (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (+.f32 1 (fabs.f32 x)) (+.f32 (*.f32 1/2 (pow.f32 x 2)) (+.f32 (*.f32 (pow.f32 x 4) -1/8) (*.f32 (pow.f32 x 6) 1/16))))) x) |
(copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 -1/8 (/.f32 (pow.f32 x 4) (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
2 calls:
| 30.0ms | x |
| 14.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
| Error | Segments | Branch |
|---|---|---|
| 11.8b | 3 | x |
| 11.8b | 3 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) |
Compiled 244 to 154 computations (36.9% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.6338362097740173 | 6.436204433441162 |
| 0.0ms | -inf | -42.96803665161133 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
(copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) (*.f32 -1 (/.f32 (fabs.f32 x) x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
1 calls:
| 22.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 12.4b | 3 | x |
Compiled 132 to 76 computations (42.4% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.2050330936908722 | 0.6771374344825745 |
| 0.0ms | -2.411158561706543 | -0.1960020512342453 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x) |
1 calls:
| 19.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 12.5b | 3 | x |
Compiled 91 to 52 computations (42.9% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.2050330936908722 | 0.6771374344825745 |
| 0.0ms | -2.411158561706543 | -0.1960020512342453 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (log.f32 (-.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (+.f32 (log.f32 x) (/.f32 (fabs.f32 x) x)) x) |
(copysign.f32 (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x)))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x) |
1 calls:
| 19.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 12.5b | 3 | x |
Compiled 78 to 45 computations (42.3% saved)
| 2× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.6771374344825745 | 312.0160217285156 |
| 0.0ms | -2.411158561706543 | -0.1960020512342453 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) |
1 calls:
| 9.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 17.0b | 2 | x |
Compiled 43 to 28 computations (34.9% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | -2.411158561706543 | -0.1960020512342453 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x) |
1 calls:
| 10.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 18.3b | 2 | x |
Compiled 36 to 24 computations (33.3% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | -4.1218841200901484e-38 | 1.7384332184807176e-38 |
Compiled 17 to 12 computations (29.4% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
(copysign.f32 (*.f32 -1 (log.f32 (/.f32 -1 x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (/.f32 (fabs.f32 x) x) x) |
1 calls:
| 7.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 20.2b | 2 | x |
Compiled 28 to 18 computations (35.7% saved)
| 1× | binary-search |
| Time | Left | Right |
|---|---|---|
| 0.0ms | -0.1960020512342453 | -0.06692063063383102 |
Compiled 17 to 12 computations (29.4% saved)
Total -4.6b remaining (-20.3%)
Threshold costs -4.6b (-20.3%)
| Inputs |
|---|
(copysign.f32 (log.f32 (neg.f32 x)) x) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
1 calls:
| 3.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 22.8b | 1 | x |
Compiled 14 to 9 computations (35.7% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 91 | 946 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) -1) (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) (if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) 1) (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) -inf.0) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) 1) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) (if (<=.f32 x 13421773/33554432) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 x 13421773/33554432) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 x 1) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x)) |
(if (<=.f32 x -14272477/356811923176489970264571492362373784095686656) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x)) |
(if (<=.f32 x -13421773/134217728) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (/.f32 (fabs.f32 x) x) x)) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (neg.f32 x)) x) |
| Outputs |
|---|
(if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) -1) (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) (if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) 1) (copysign.f32 (+.f32 (+.f32 (log.f32 (+.f32 1 (fabs.f32 x))) (*.f32 1/2 (/.f32 (pow.f32 x 2) (+.f32 1 (fabs.f32 x))))) (*.f32 (+.f32 (*.f32 3 (/.f32 1 (+.f32 1 (fabs.f32 x)))) (*.f32 3 (/.f32 1 (pow.f32 (+.f32 1 (fabs.f32 x)) 2)))) (*.f32 -1/24 (pow.f32 x 4)))) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) -inf.0) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) 1) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) 1)))) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (-.f32 (+.f32 (fabs.f32 x) (*.f32 (/.f32 1 x) -1/2)) x)) x) (if (<=.f32 x 13421773/33554432) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 x 13421773/33554432) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (*.f32 1/2 (/.f32 1 x)) (+.f32 (fabs.f32 x) x))) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (if (<=.f32 x 1) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) x)) x))) |
(if (<=.f32 x -2) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) 1)) x)) |
(if (<=.f32 x -14272477/356811923176489970264571492362373784095686656) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (*.f32 -1 (log.f32 (/.f32 1 x))) x)) |
(if (<=.f32 x -13421773/134217728) (copysign.f32 (log.f32 (/.f32 -1/2 x)) x) (copysign.f32 (/.f32 (fabs.f32 x) x) x)) |
(copysign.f32 (log.f32 (/.f32 -1/2 x)) x) |
(copysign.f32 (log.f32 (neg.f32 x)) x) |
Compiled 336 to 227 computations (32.4% saved)
| 2× | egg-herbie |
| 956× | rational.json-simplify-27 |
| 956× | rational.json-simplify-27 |
| 934× | rational.json-simplify-1 |
| 934× | rational.json-simplify-1 |
| 712× | rational.json-simplify-41 |
Useful iterations: 5 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 141 | 2158 |
| 1 | 276 | 2158 |
| 2 | 483 | 2158 |
| 3 | 900 | 2122 |
| 4 | 1590 | 2122 |
| 5 | 2618 | 2118 |
| 6 | 3224 | 2118 |
| 7 | 3373 | 2118 |
| 8 | 3505 | 2118 |
| 9 | 3580 | 2118 |
| 10 | 3588 | 2118 |
| 0 | 141 | 2158 |
| 1 | 276 | 2158 |
| 2 | 483 | 2158 |
| 3 | 900 | 2122 |
| 4 | 1590 | 2122 |
| 5 | 2618 | 2118 |
| 6 | 3224 | 2118 |
| 7 | 3373 | 2118 |
| 8 | 3505 | 2118 |
| 9 | 3580 | 2118 |
| 10 | 3588 | 2118 |
| 1× | saturated |
| 1× | saturated |
Compiled 373 to 266 computations (28.7% saved)
Compiled 327 to 207 computations (36.7% saved)
Loading profile data...