Time bar (total: 2.8s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 4 |
| 25% | 25% | 74.9% | 0.1% | 0% | 0% | 0% | 5 |
| 37.5% | 37.5% | 62.4% | 0.1% | 0% | 0% | 0% | 6 |
| 56.3% | 56.2% | 43.7% | 0.1% | 0% | 0% | 0% | 7 |
| 65.6% | 65.6% | 34.3% | 0.1% | 0% | 0% | 0% | 8 |
| 76.6% | 76.5% | 23.4% | 0.1% | 0% | 0% | 0% | 9 |
| 82% | 82% | 18% | 0.1% | 0% | 0% | 0% | 10 |
| 87.9% | 87.8% | 12.1% | 0.1% | 0% | 0% | 0% | 11 |
| 90.8% | 90.7% | 9.2% | 0.1% | 0% | 0% | 0% | 12 |
Compiled 8 to 5 computations (37.5% saved)
| 784.0ms | 8256× | body | 256 | valid |
| 0.0ms | 6× | body | 256 | infinite |
| 2× | egg-herbie |
| 10× | rational.json-simplify-1 |
| 4× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 8 | 26 |
| 1 | 12 | 26 |
| 2 | 16 | 26 |
| 3 | 18 | 26 |
| 0 | 2 | 2 |
| 1× | saturated |
| 1× | saturated |
| Inputs |
|---|
0 |
1 |
| Outputs |
|---|
0 |
1 |
| Inputs |
|---|
(+.f64 (+.f64 x y) x) |
(+.f64 (+.f64 y x) y) |
| Outputs |
|---|
(+.f64 (+.f64 x y) x) |
(+.f64 x (+.f64 x y)) |
(+.f64 (+.f64 y x) y) |
(+.f64 y (+.f64 x y)) |
(+.f64 x (+.f64 y y)) |
Compiled 9 to 6 computations (33.3% saved)
| 1× | egg-herbie |
| 6× | rational.json-simplify-1 |
| 2× | rational.json-simplify-41 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 13 |
| 1 | 8 | 13 |
| 2 | 10 | 13 |
| 3 | 11 | 13 |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (+.f64 x y) x) |
| Outputs |
|---|
(+.f64 (+.f64 x y) x) |
(+.f64 x (+.f64 x y)) |
Compiled 12 to 5 computations (58.3% saved)
2 alts after pruning (2 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 1 | 1 | 2 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 0 | 0 |
| Total | 1 | 2 | 3 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0.0b | (+.f64 (+.f64 x y) x) |
Compiled 7 to 4 computations (42.9% saved)
Found 1 expressions with local error:
| New | Error | Program |
|---|---|---|
| ✓ | 0.0b | (+.f64 (+.f64 x y) x) |
Compiled 12 to 4 computations (66.7% saved)
6 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 0.0ms | x | @ | inf | (+.f64 (+.f64 x y) x) |
| 0.0ms | y | @ | 0 | (+.f64 (+.f64 x y) x) |
| 0.0ms | x | @ | 0 | (+.f64 (+.f64 x y) x) |
| 0.0ms | y | @ | inf | (+.f64 (+.f64 x y) x) |
| 0.0ms | x | @ | -inf | (+.f64 (+.f64 x y) x) |
| 1× | batch-egg-rewrite |
| 2960× | rational.json-simplify-35 |
| 1792× | rational.json-simplify-2 |
| 1320× | rational.json-simplify-1 |
| 1212× | exponential.json-3 |
| 1212× | rational.json-1 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 6 | 13 |
| 1 | 40 | 13 |
| 2 | 93 | 13 |
| 3 | 199 | 13 |
| 4 | 397 | 13 |
| 5 | 942 | 13 |
| 6 | 2209 | 13 |
| 7 | 3593 | 13 |
| 8 | 4327 | 13 |
| 9 | 5076 | 13 |
| 10 | 5513 | 13 |
| 11 | 5513 | 13 |
| 12 | 5992 | 13 |
| 13 | 6189 | 13 |
| 14 | 6645 | 13 |
| 15 | 7538 | 13 |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (+.f64 x y) x) |
| Outputs |
|---|
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 y (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (+.f64 x (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (+.f64 y (+.f64 x x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 y (+.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (+.f64 (+.f64 y y) (*.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (*.f64 y 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 y (+.f64 x x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y (+.f64 x x)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (+.f64 y (+.f64 x x)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (+.f64 y y) (*.f64 x 4)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 y (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))))) 512)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))))) 1024)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 y (+.f64 x x)) 1))))) |
| 1× | egg-herbie |
| 3566× | rational.json-simplify-1 |
| 2764× | rational.json-simplify-41 |
| 1950× | rational.json-simplify-35 |
| 1922× | rational.json-simplify-49 |
| 968× | rational.json-simplify-2 |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 66 | 645 |
| 1 | 153 | 645 |
| 2 | 440 | 645 |
| 3 | 1354 | 645 |
| 4 | 2336 | 645 |
| 5 | 2769 | 645 |
| 6 | 2833 | 645 |
| 7 | 2876 | 645 |
| 8 | 2913 | 645 |
| 9 | 2948 | 645 |
| 10 | 5060 | 645 |
| 11 | 5112 | 645 |
| 12 | 5167 | 645 |
| 13 | 5206 | 645 |
| 14 | 5246 | 645 |
| 15 | 5284 | 645 |
| 16 | 5320 | 645 |
| 17 | 5356 | 645 |
| 18 | 5390 | 645 |
| 19 | 5424 | 645 |
| 20 | 5458 | 645 |
| 21 | 5492 | 645 |
| 22 | 5526 | 645 |
| 23 | 5560 | 645 |
| 24 | 5594 | 645 |
| 25 | 5628 | 645 |
| 26 | 7187 | 645 |
| 27 | 7255 | 645 |
| 28 | 7322 | 645 |
| 29 | 7359 | 645 |
| 30 | 7393 | 645 |
| 31 | 7427 | 645 |
| 32 | 7461 | 645 |
| 33 | 7461 | 645 |
| 1× | node limit |
| Inputs |
|---|
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (*.f64 2 x) y) |
(-.f64 (+.f64 y (+.f64 x x)) 0) |
(*.f64 (+.f64 y (+.f64 x x)) 1) |
(*.f64 1 (+.f64 y (+.f64 x x))) |
(*.f64 2 (+.f64 x (*.f64 y 1/2))) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 1/2) |
(*.f64 4 (*.f64 (+.f64 y (+.f64 x x)) 1/4)) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 1/4) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 1/8) |
(*.f64 1/2 (*.f64 (+.f64 y (+.f64 x x)) 2)) |
(*.f64 1/2 (+.f64 (+.f64 y y) (*.f64 x 4))) |
(*.f64 (+.f64 x (*.f64 y 1/2)) 2) |
(*.f64 1/4 (*.f64 (+.f64 y (+.f64 x x)) 4)) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 1/4) 4) |
(*.f64 1/8 (*.f64 (+.f64 y (+.f64 x x)) 8)) |
(*.f64 (+.f64 (+.f64 y y) (*.f64 x 4)) 1/2) |
(/.f64 (+.f64 y (+.f64 x x)) 1) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 2) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 4) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 8) |
(/.f64 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)) 16) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))) 32) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))) 64) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))) 128) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))) 256) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))))) 512) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))))) 1024) |
(pow.f64 (+.f64 y (+.f64 x x)) 1) |
| Outputs |
|---|
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
y |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(+.f64 (*.f64 2 x) y) |
(+.f64 y (*.f64 2 x)) |
(-.f64 (+.f64 y (+.f64 x x)) 0) |
(+.f64 y (+.f64 x x)) |
(*.f64 (+.f64 y (+.f64 x x)) 1) |
(+.f64 y (+.f64 x x)) |
(*.f64 1 (+.f64 y (+.f64 x x))) |
(+.f64 y (+.f64 x x)) |
(*.f64 2 (+.f64 x (*.f64 y 1/2))) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 1/2) |
(+.f64 y (+.f64 x x)) |
(*.f64 4 (*.f64 (+.f64 y (+.f64 x x)) 1/4)) |
(+.f64 y (+.f64 x x)) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 1/4) |
(+.f64 y (+.f64 x x)) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 1/8) |
(+.f64 y (+.f64 x x)) |
(*.f64 1/2 (*.f64 (+.f64 y (+.f64 x x)) 2)) |
(+.f64 y (+.f64 x x)) |
(*.f64 1/2 (+.f64 (+.f64 y y) (*.f64 x 4))) |
(*.f64 1/2 (+.f64 y (+.f64 y (*.f64 x 4)))) |
(*.f64 (+.f64 x (*.f64 y 1/2)) 2) |
(*.f64 2 (+.f64 x (*.f64 y 1/2))) |
(*.f64 1/4 (*.f64 (+.f64 y (+.f64 x x)) 4)) |
(+.f64 y (+.f64 x x)) |
(*.f64 (*.f64 (+.f64 y (+.f64 x x)) 1/4) 4) |
(+.f64 y (+.f64 x x)) |
(*.f64 1/8 (*.f64 (+.f64 y (+.f64 x x)) 8)) |
(+.f64 y (+.f64 x x)) |
(*.f64 (+.f64 (+.f64 y y) (*.f64 x 4)) 1/2) |
(*.f64 1/2 (+.f64 (+.f64 y y) (*.f64 x 4))) |
(*.f64 1/2 (+.f64 y (+.f64 y (*.f64 x 4)))) |
(/.f64 (+.f64 y (+.f64 x x)) 1) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 2) 2) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 4) 4) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 (+.f64 y (+.f64 x x)) 8) 8) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)) 16) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))) 32) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))) 64) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))) 128) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))) 256) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8))))))) 512) |
(+.f64 y (+.f64 x x)) |
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (+.f64 y (+.f64 x x)) 8)))))))) 1024) |
(+.f64 y (+.f64 x x)) |
(pow.f64 (+.f64 y (+.f64 x x)) 1) |
(+.f64 y (+.f64 x x)) |
Compiled 315 to 177 computations (43.8% saved)
3 alts after pruning (3 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 30 | 3 | 33 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 31 | 3 | 34 |
| Status | Error | Program |
|---|---|---|
| ▶ | 0b | (+.f64 (*.f64 2 x) y) |
| ▶ | 31.1b | (*.f64 2 x) |
| 32.7b | y |
Compiled 15 to 11 computations (26.7% saved)
Compiled 7 to 5 computations (28.6% saved)
Compiled 13 to 8 computations (38.5% saved)
Compiled 2 to 2 computations (0% saved)
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 1 | 1 |
| Done | 0 | 1 | 1 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0b | (+.f64 (*.f64 2 x) y) |
| ✓ | 31.1b | (*.f64 2 x) |
| 32.7b | y |
Compiled 15 to 11 computations (26.7% saved)
Compiled 2 to 2 computations (0% saved)
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 2 | 2 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0b | (+.f64 (*.f64 2 x) y) |
| ✓ | 31.1b | (*.f64 2 x) |
| 32.7b | y |
Compiled 15 to 11 computations (26.7% saved)
Compiled 2 to 2 computations (0% saved)
3 alts after pruning (1 fresh and 2 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 0 | 0 | 0 |
| Fresh | 0 | 1 | 1 |
| Picked | 0 | 0 | 0 |
| Done | 0 | 2 | 2 |
| Total | 0 | 3 | 3 |
| Status | Error | Program |
|---|---|---|
| ✓ | 0b | (+.f64 (*.f64 2 x) y) |
| ✓ | 31.1b | (*.f64 2 x) |
| 32.7b | y |
Compiled 15 to 11 computations (26.7% saved)
| Inputs |
|---|
y |
(*.f64 2 x) |
(+.f64 (*.f64 2 x) y) |
(+.f64 (+.f64 x y) x) |
| Outputs |
|---|
(+.f64 (*.f64 2 x) y) |
3 calls:
| 220.0ms | (+.f64 (+.f64 x y) x) |
| 4.0ms | y |
| 4.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 0b | 1 | x |
| 0b | 1 | y |
| 0b | 1 | (+.f64 (+.f64 x y) x) |
Compiled 29 to 17 computations (41.4% saved)
Total -49.7b remaining (-408.3%)
Threshold costs -49.7b (-408.3%)
| Inputs |
|---|
y |
(*.f64 2 x) |
| Outputs |
|---|
(*.f64 2 x) |
y |
(*.f64 2 x) |
y |
(*.f64 2 x) |
2 calls:
| 198.0ms | y |
| 16.0ms | x |
| Error | Segments | Branch |
|---|---|---|
| 12.2b | 5 | x |
| 14.4b | 3 | y |
Compiled 12 to 8 computations (33.3% saved)
| 4× | binary-search |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 1.7974011298973362e-7 | 864.8332090444151 |
| 16.0ms | 3.608632408019527e-67 | 2.4621441676184363e-57 |
| 11.0ms | 7.174842090862157e-84 | 7.563314317552312e-81 |
| 8.0ms | -3.269345415763413e-87 | -8.113317393511023e-88 |
| 43.0ms | 544× | body | 256 | valid |
Compiled 352 to 280 computations (20.5% saved)
| 1× | egg-herbie |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 22 | 73 |
| 1× | fuel |
| 1× | saturated |
| Inputs |
|---|
(+.f64 (*.f64 2 x) y) |
(if (<=.f64 x -909896301509733/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) (*.f64 2 x) (if (<=.f64 x 5767164996986457/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) y (if (<=.f64 x 5767298273795133/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (*.f64 2 x) (if (<=.f64 x 7926335344172073/72057594037927936) y (*.f64 2 x))))) |
y |
| Outputs |
|---|
(+.f64 (*.f64 2 x) y) |
(if (<=.f64 x -909896301509733/279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472) (*.f64 2 x) (if (<=.f64 x 5767164996986457/4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152) y (if (<=.f64 x 5767298273795133/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (*.f64 2 x) (if (<=.f64 x 7926335344172073/72057594037927936) y (*.f64 2 x))))) |
y |
Compiled 39 to 27 computations (30.8% saved)
Compiled 35 to 23 computations (34.3% saved)
Loading profile data...