
Time bar (total: 4.8s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 0 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 1 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 2 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 3 |
| 0% | 0% | 99.8% | 0.2% | 0% | 0% | 0% | 4 |
| 25% | 25% | 74.9% | 0.2% | 0% | 0% | 0% | 5 |
| 25% | 25% | 74.9% | 0.2% | 0% | 0% | 0% | 6 |
| 25% | 25% | 74.9% | 0.2% | 0% | 0% | 0% | 7 |
| 37.5% | 37.4% | 62.4% | 0.2% | 0% | 0% | 0% | 8 |
| 37.5% | 37.4% | 62.4% | 0.2% | 0% | 0% | 0% | 9 |
| 37.5% | 37.4% | 62.4% | 0.2% | 0% | 0% | 0% | 10 |
| 37.5% | 37.4% | 62.4% | 0.2% | 0% | 0% | 0% | 11 |
| 48.4% | 48.3% | 51.5% | 0.2% | 0% | 0% | 0% | 12 |
Compiled 13 to 12 computations (7.7% saved)
| 731.0ms | 8 256× | 0 | valid |
ival-mult!: 256.0ms (79.3% of total)ival-div!: 46.0ms (14.2% of total)ival-sub!: 19.0ms (5.9% of total)adjust: 2.0ms (0.6% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 52 | 144 |
| 1 | 229 | 144 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 91.1% | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
(negabs x)
Compiled 22 to 20 computations (9.1% saved)
| Inputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
(*.f64 x #s(literal 2 binary64)) |
x |
#s(literal 2 binary64) |
(-.f64 (*.f64 y z) (*.f64 t z)) |
(*.f64 y z) |
y |
z |
(*.f64 t z) |
t |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (-.f64 (*.f64 y z) (*.f64 t z))))) |
#s(approx (* x 2) (*.f64 #s(literal 2 binary64) x)) |
#s(approx x x) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 3 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 4 binary64)) z))))))))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 t z))) |
#s(approx (- (* y z) (* t z)) (-.f64 (*.f64 y z) (*.f64 t z))) |
#s(approx (* y z) (*.f64 y z)) |
#s(approx y y) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))))) y)) |
#s(approx (- (* y z) (* t z)) (*.f64 y (+.f64 z (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t z) y))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 y z)))) y))) y))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 y z)))) y) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z))) y))) y))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) z (/.f64 (*.f64 t z) y))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 z (-.f64 y t))))) |
#s(approx (- (* y z) (* t z)) (*.f64 z (-.f64 y t))) |
#s(approx z z) |
#s(approx (* t z) (*.f64 t z)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t)))))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 4 binary64)) z))))))))) |
#s(approx (- (* y z) (* t z)) (fma.f64 #s(literal -1 binary64) (*.f64 t z) (*.f64 y z))) |
#s(approx t t) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 (pow.f64 t #s(literal 3 binary64)) z)))))) t)) |
#s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 t z)))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 t z)))) t))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 t (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t)) (*.f64 #s(literal -1 binary64) z))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 16.0ms | t | inf |
| 4.0ms | z | -inf |
| 2.0ms | x | inf |
| 2.0ms | y | 0 |
| 2.0ms | x | 0 |
| Inputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
(*.f64 x #s(literal 2 binary64)) |
x |
#s(literal 2 binary64) |
(-.f64 (*.f64 y z) (*.f64 t z)) |
(*.f64 y z) |
y |
z |
(*.f64 t z) |
t |
| Outputs |
|---|
(*.f64 (*.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 z (-.f64 y t)))) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(/.f64 (neg.f64 (*.f64 x #s(literal 2 binary64))) (neg.f64 (*.f64 z (-.f64 y t)))) |
(*.f64 x #s(literal 2 binary64)) |
(*.f64 #s(literal 2 binary64) x) |
x |
#s(literal 2 binary64) |
(+.f64 #s(literal 1 binary64) #s(literal 1 binary64)) |
(*.f64 z (-.f64 y t)) |
(+.f64 (*.f64 y z) (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y z) (*.f64 (neg.f64 t) z)) |
(-.f64 (*.f64 y z) (*.f64 t z)) |
(fma.f64 y z (neg.f64 (*.f64 t z))) |
(fma.f64 z y (neg.f64 (*.f64 t z))) |
(fma.f64 y z (*.f64 (neg.f64 t) z)) |
(fma.f64 z y (*.f64 (neg.f64 t) z)) |
(neg.f64 (-.f64 (*.f64 t z) (*.f64 y z))) |
(*.f64 y z) |
(*.f64 z y) |
y |
z |
(*.f64 t z) |
(*.f64 z t) |
t |
Compiled 1 322 to 288 computations (78.2% saved)
7 alts after pruning (7 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 48 | 7 | 55 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 49 | 7 | 56 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 93.9% | (/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| ▶ | 88.4% | (/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
| ▶ | 93.7% | (*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
| 43.1% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) | |
| 48.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) | |
| ▶ | 51.3% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| ▶ | 56.9% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
Compiled 266 to 202 computations (24.1% saved)
| Inputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(*.f64 x #s(literal 2 binary64)) |
x |
#s(literal 2 binary64) |
(*.f64 z (-.f64 y t)) |
z |
(-.f64 y t) |
y |
t |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
(*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z))) |
#s(literal -2 binary64) |
(/.f64 x (*.f64 t z)) |
(*.f64 t z) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z))) |
(/.f64 x (*.f64 y z)) |
(*.f64 y z) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
#s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z))) |
(*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)) |
(-.f64 (/.f64 (*.f64 y z) t) z) |
(/.f64 (*.f64 y z) t) |
| Outputs |
|---|
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 z (-.f64 y t))))) |
#s(approx (* x 2) (*.f64 #s(literal 2 binary64) x)) |
#s(approx x x) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (-.f64 (*.f64 y z) (*.f64 t z))))) |
#s(approx (* -2 (/ x (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ x (* t z)) (/.f64 x (*.f64 t z))) |
#s(approx (* 2 (/ x (* y z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
#s(approx (/ x (* y z)) (/.f64 x (*.f64 y z))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 3 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 4 binary64)) z))))))))) |
#s(approx (* z (- y t)) (*.f64 #s(literal -1 binary64) (*.f64 t z))) |
#s(approx (* z (- y t)) (fma.f64 #s(literal -1 binary64) (*.f64 t z) (*.f64 y z))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) t)) |
#s(approx (- y t) (-.f64 y t)) |
#s(approx y y) |
#s(approx (* y z) (*.f64 y z)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 4 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (- (* y z) (* t z)) (-.f64 (*.f64 y z) (*.f64 t z))) |
#s(approx (- (/ (* y z) t) z) (*.f64 #s(literal -1 binary64) z)) |
#s(approx (- (/ (* y z) t) z) (-.f64 (/.f64 (*.f64 y z) t) z)) |
#s(approx (/ (* y z) t) (/.f64 (*.f64 y z) t)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))))) y)) |
#s(approx (* z (- y t)) (*.f64 y (+.f64 z (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t z) y))))) |
#s(approx (- y t) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t y))))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)))) y)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (fma.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (- (/ (* y z) t) z) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z y) (/.f64 z t)))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 y z)))) y))) y))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 y z)))) y) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z))) y))) y))) |
#s(approx (* z (- y t)) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) z (/.f64 (*.f64 t z) y))))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (/.f64 t y) #s(literal 1 binary64))))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 y z))) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) z))) y)) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (- (/ (* y z) t) z) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z t) (/.f64 z y))))) |
#s(approx (* z (- y t)) (*.f64 z (-.f64 y t))) |
#s(approx z z) |
#s(approx (* t z) (*.f64 t z)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
#s(approx (* t (- (/ (* y z) t) z)) (*.f64 t (*.f64 z (-.f64 (/.f64 y t) #s(literal 1 binary64))))) |
#s(approx (- (/ (* y z) t) z) (*.f64 z (-.f64 (/.f64 y t) #s(literal 1 binary64)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t)))))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t))))) |
#s(approx (* t (- (/ (* y z) t) z)) (*.f64 #s(literal -1 binary64) (*.f64 t (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y t))))))) |
#s(approx (- (/ (* y z) t) z) (*.f64 #s(literal -1 binary64) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y t)))))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (* z (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 4 binary64)) z))))))))) |
#s(approx (- y t) (+.f64 y (*.f64 #s(literal -1 binary64) t))) |
#s(approx t t) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 t (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 4 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (- (/ (* y z) t) z) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 t z) (*.f64 y z)) t)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) t)) |
#s(approx (/ (* x 2) (* z (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 (pow.f64 t #s(literal 3 binary64)) z)))))) t)) |
#s(approx (* z (- y t)) (*.f64 t (fma.f64 #s(literal -1 binary64) z (/.f64 (*.f64 y z) t)))) |
#s(approx (- y t) (*.f64 t (-.f64 (/.f64 y t) #s(literal 1 binary64)))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z)))) t)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))))) t)) |
#s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 t z)))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (/ (* x 2) (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 t z)))) t))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (* z (- y t)) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 z (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t)))))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y t)))))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 t z))) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) z))) t)) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (- (* y z) (* t z)) (*.f64 #s(literal -1 binary64) (*.f64 t (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t)) (*.f64 #s(literal -1 binary64) z))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 9.0ms | x | 0 |
| 7.0ms | x | -inf |
| 7.0ms | y | -inf |
| 7.0ms | t | -inf |
| 5.0ms | z | -inf |
| Inputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(*.f64 x #s(literal 2 binary64)) |
x |
#s(literal 2 binary64) |
(*.f64 z (-.f64 y t)) |
z |
(-.f64 y t) |
y |
t |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
(*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z))) |
#s(literal -2 binary64) |
(/.f64 x (*.f64 t z)) |
(*.f64 t z) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z))) |
(/.f64 x (*.f64 y z)) |
(*.f64 y z) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
#s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z))) |
(*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)) |
(-.f64 (/.f64 (*.f64 y z) t) z) |
(/.f64 (*.f64 y z) t) |
| Outputs |
|---|
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(*.f64 (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t))) x) |
(*.f64 (/.f64 x z) (/.f64 #s(literal 2 binary64) (-.f64 y t))) |
(*.f64 (*.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(/.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (-.f64 y t)) |
(/.f64 (neg.f64 (*.f64 x #s(literal 2 binary64))) (neg.f64 (*.f64 z (-.f64 y t)))) |
(*.f64 x #s(literal 2 binary64)) |
(*.f64 #s(literal 2 binary64) x) |
x |
#s(literal 2 binary64) |
(+.f64 #s(literal 1 binary64) #s(literal 1 binary64)) |
(*.f64 z (-.f64 y t)) |
(*.f64 (-.f64 y t) z) |
(+.f64 (*.f64 y z) (neg.f64 (*.f64 t z))) |
(+.f64 (*.f64 y z) (*.f64 (neg.f64 t) z)) |
(-.f64 (*.f64 y z) (*.f64 t z)) |
(fma.f64 y z (neg.f64 (*.f64 t z))) |
(fma.f64 z y (neg.f64 (*.f64 t z))) |
(fma.f64 y z (*.f64 (neg.f64 t) z)) |
(fma.f64 z y (*.f64 (neg.f64 t) z)) |
(neg.f64 (-.f64 (*.f64 t z) (*.f64 y z))) |
z |
(+.f64 y (neg.f64 t)) |
(-.f64 y t) |
(neg.f64 (-.f64 t y)) |
y |
t |
#s(approx (/ (/ (* x 2) z) (- y t)) (/.f64 (*.f64 #s(literal -2 binary64) x) (*.f64 t z))) |
(*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z))) |
(*.f64 (/.f64 x (*.f64 t z)) #s(literal -2 binary64)) |
(/.f64 (*.f64 #s(literal -2 binary64) x) (*.f64 t z)) |
#s(literal -2 binary64) |
(neg.f64 #s(literal 2 binary64)) |
(*.f64 x (/.f64 #s(literal 1 binary64) (*.f64 t z))) |
(/.f64 x (*.f64 t z)) |
(/.f64 (/.f64 x t) z) |
(/.f64 (neg.f64 x) (neg.f64 (*.f64 t z))) |
(*.f64 t z) |
(*.f64 z t) |
#s(approx (/ (/ (* x 2) z) (- y t)) (/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 y z))) |
(*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z))) |
(*.f64 (/.f64 x (*.f64 y z)) #s(literal 2 binary64)) |
(+.f64 (/.f64 x (*.f64 y z)) (/.f64 x (*.f64 y z))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 y z)) |
(fma.f64 x (/.f64 #s(literal 1 binary64) (*.f64 y z)) (/.f64 x (*.f64 y z))) |
(*.f64 x (/.f64 #s(literal 1 binary64) (*.f64 y z))) |
(/.f64 x (*.f64 y z)) |
(/.f64 (/.f64 x y) z) |
(/.f64 (neg.f64 x) (neg.f64 (*.f64 y z))) |
(*.f64 y z) |
(*.f64 z y) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(*.f64 (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t))) x) |
(*.f64 (/.f64 x z) (/.f64 #s(literal 2 binary64) (-.f64 y t))) |
(*.f64 (*.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(/.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (-.f64 y t)) |
(/.f64 (neg.f64 (*.f64 x #s(literal 2 binary64))) (neg.f64 (*.f64 z (-.f64 y t)))) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t)) |
(/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t))) |
(/.f64 #s(literal -2 binary64) (neg.f64 (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (* z (- y t)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
#s(approx (* z (- y t)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z))) |
(*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)) |
(*.f64 (-.f64 (/.f64 (*.f64 y z) t) z) t) |
(+.f64 (/.f64 (*.f64 y z) t) (neg.f64 z)) |
(-.f64 (/.f64 (*.f64 y z) t) z) |
(fma.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) t) (neg.f64 z)) |
(fma.f64 y (/.f64 z t) (neg.f64 z)) |
(neg.f64 (-.f64 z (/.f64 (*.f64 y z) t))) |
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) t)) |
(*.f64 y (/.f64 z t)) |
(/.f64 (*.f64 y z) t) |
(/.f64 (neg.f64 (*.f64 y z)) (neg.f64 t)) |
Compiled 3 890 to 780 computations (79.9% saved)
10 alts after pruning (6 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 168 | 6 | 174 |
| Fresh | 2 | 0 | 2 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 0 | 0 |
| Total | 171 | 10 | 181 |
| Status | Accuracy | Program |
|---|---|---|
| 90.5% | (/.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (-.f64 y t)) | |
| ✓ | 93.9% | (/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| ✓ | 88.4% | (/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
| ▶ | 94.7% | (*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
| ▶ | 51.3% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
| ▶ | 56.8% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
| ▶ | 50.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
| ✓ | 51.3% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| ▶ | 56.5% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
| ✓ | 56.9% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
Compiled 240 to 202 computations (15.8% saved)
| Inputs |
|---|
(*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
x |
(/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t)) |
(/.f64 #s(literal 2 binary64) z) |
#s(literal 2 binary64) |
z |
(-.f64 y t) |
y |
t |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
(/.f64 #s(literal -2 binary64) (*.f64 t z)) |
#s(literal -2 binary64) |
(*.f64 t z) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
(/.f64 #s(literal 2 binary64) (*.f64 y z)) |
(*.f64 y z) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
(*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z)) |
(/.f64 (/.f64 x t) z) |
(/.f64 x t) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z)) |
(/.f64 (/.f64 x y) z) |
(/.f64 x y) |
| Outputs |
|---|
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 z (-.f64 y t))))) |
#s(approx x x) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (-.f64 (*.f64 y z) (*.f64 t z))))) |
#s(approx (* -2 (/ (/ x t) z)) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (/ x t) z) (/.f64 x (*.f64 t z))) |
#s(approx (/ x t) (/.f64 x t)) |
#s(approx (* 2 (/ (/ x y) z)) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
#s(approx (/ (/ x y) z) (/.f64 x (*.f64 y z))) |
#s(approx (/ x y) (/.f64 x y)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 3 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 4 binary64)) z))))))))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
#s(approx (/ (/ 2 z) (- y t)) (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ (/ 2 z) (- y t)) (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ (/ 2 z) (- y t)) (-.f64 (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 4 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) t)) |
#s(approx (- y t) (-.f64 y t)) |
#s(approx y y) |
#s(approx (/ 2 (* y z)) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
#s(approx (* y z) (*.f64 y z)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))))) y)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)))) y)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (fma.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (- y t) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t y))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 y z)))) y))) y))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 y z)))) y) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z))) y))) y))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 y z))) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) z))) y)) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (/.f64 t y) #s(literal 1 binary64))))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
#s(approx (/ 2 z) (/.f64 #s(literal 2 binary64) z)) |
#s(approx z z) |
#s(approx (* t z) (*.f64 t z)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t)))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z))))))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 4 binary64)) z))))))))) |
#s(approx (/ (/ 2 z) (- y t)) (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ (/ 2 z) (- y t)) (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ (/ 2 z) (- y t)) (fma.f64 t (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 4 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (- y t) (+.f64 y (*.f64 #s(literal -1 binary64) t))) |
#s(approx t t) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) t)) |
#s(approx (* x (/ (/ 2 z) (- y t))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 (pow.f64 t #s(literal 3 binary64)) z)))))) t)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z)))) t)) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))))) t)) |
#s(approx (- y t) (*.f64 t (-.f64 (/.f64 y t) #s(literal 1 binary64)))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 t z)))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (* x (/ (/ 2 z) (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 t z)))) t))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ (/ 2 z) (- y t)) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 t z))) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) z))) t)) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y t)))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 45.0ms | x | inf |
| 7.0ms | x | -inf |
| 6.0ms | z | inf |
| 4.0ms | z | -inf |
| 3.0ms | z | 0 |
| Inputs |
|---|
(*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
x |
(/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t)) |
(/.f64 #s(literal 2 binary64) z) |
#s(literal 2 binary64) |
z |
(-.f64 y t) |
y |
t |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
(/.f64 #s(literal -2 binary64) (*.f64 t z)) |
#s(literal -2 binary64) |
(*.f64 t z) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
(/.f64 #s(literal 2 binary64) (*.f64 y z)) |
(*.f64 y z) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
(*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z)) |
(/.f64 (/.f64 x t) z) |
(/.f64 x t) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z)) |
(/.f64 (/.f64 x y) z) |
(/.f64 x y) |
| Outputs |
|---|
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 (-.f64 y t) z))) |
(*.f64 (/.f64 #s(literal 2 binary64) (*.f64 (-.f64 y t) z)) x) |
(*.f64 (*.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 y t) z))) |
(/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 (-.f64 y t) z)) |
(/.f64 (neg.f64 (*.f64 x #s(literal 2 binary64))) (neg.f64 (*.f64 (-.f64 y t) z))) |
x |
(*.f64 (/.f64 #s(literal 2 binary64) z) (/.f64 #s(literal 1 binary64) (-.f64 y t))) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 y t) z))) |
(/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t)) |
(/.f64 (neg.f64 (/.f64 #s(literal 2 binary64) z)) (neg.f64 (-.f64 y t))) |
(/.f64 #s(literal 2 binary64) (*.f64 (-.f64 y t) z)) |
(/.f64 #s(literal -2 binary64) (neg.f64 (*.f64 (-.f64 y t) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 #s(literal 2 binary64) z) |
(/.f64 #s(literal -2 binary64) (neg.f64 z)) |
#s(literal 2 binary64) |
(+.f64 #s(literal 1 binary64) #s(literal 1 binary64)) |
(neg.f64 #s(literal -2 binary64)) |
z |
(+.f64 y (neg.f64 t)) |
(-.f64 y t) |
(neg.f64 (-.f64 t y)) |
y |
t |
(*.f64 x #s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
(*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))) |
(/.f64 #s(literal -2 binary64) (*.f64 t z)) |
(/.f64 (/.f64 #s(literal -2 binary64) t) z) |
(/.f64 #s(literal 2 binary64) (neg.f64 (*.f64 t z))) |
#s(literal -2 binary64) |
(neg.f64 #s(literal 2 binary64)) |
(*.f64 t z) |
(*.f64 z t) |
(*.f64 x #s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))) |
(/.f64 #s(literal 2 binary64) (*.f64 y z)) |
(/.f64 (/.f64 #s(literal 2 binary64) y) z) |
(/.f64 #s(literal -2 binary64) (neg.f64 (*.f64 y z))) |
(*.f64 y z) |
(*.f64 z y) |
#s(approx (/ (* 2 x) (* z (- y t))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
(*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z))) |
(*.f64 (/.f64 x (*.f64 t z)) #s(literal -2 binary64)) |
(/.f64 (*.f64 #s(literal -2 binary64) (/.f64 x t)) z) |
(*.f64 (/.f64 x t) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 (/.f64 x t) z) |
(/.f64 x (*.f64 t z)) |
(/.f64 (neg.f64 (/.f64 x t)) (neg.f64 z)) |
(*.f64 x (/.f64 #s(literal 1 binary64) t)) |
(/.f64 x t) |
(/.f64 (neg.f64 x) (neg.f64 t)) |
#s(approx (/ (* 2 x) (* z (- y t))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z))) |
(*.f64 (/.f64 x (*.f64 y z)) #s(literal 2 binary64)) |
(+.f64 (/.f64 x (*.f64 y z)) (/.f64 x (*.f64 y z))) |
(/.f64 (*.f64 #s(literal 2 binary64) (/.f64 x y)) z) |
(fma.f64 (/.f64 x y) (/.f64 #s(literal 1 binary64) z) (/.f64 x (*.f64 y z))) |
(*.f64 (/.f64 x y) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 (/.f64 x y) z) |
(/.f64 x (*.f64 y z)) |
(/.f64 (neg.f64 (/.f64 x y)) (neg.f64 z)) |
(*.f64 x (/.f64 #s(literal 1 binary64) y)) |
(/.f64 x y) |
(/.f64 (neg.f64 x) (neg.f64 y)) |
Compiled 2 876 to 636 computations (77.9% saved)
12 alts after pruning (4 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 120 | 4 | 124 |
| Fresh | 1 | 0 | 1 |
| Picked | 0 | 5 | 5 |
| Done | 1 | 3 | 4 |
| Total | 122 | 12 | 134 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 90.4% | (/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
| ✓ | 93.9% | (/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| ✓ | 94.7% | (*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
| ▶ | 51.6% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
| ▶ | 57.4% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
| ✓ | 51.3% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
| ✓ | 56.8% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
| ✓ | 50.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
| ▶ | 50.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z))) |
| ✓ | 51.3% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| ✓ | 56.5% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
| ✓ | 56.9% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
Compiled 184 to 156 computations (15.2% saved)
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z)) |
#s(literal 2 binary64) |
(/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z) |
(*.f64 x (/.f64 #s(literal 1 binary64) y)) |
x |
(/.f64 #s(literal 1 binary64) y) |
#s(literal 1 binary64) |
y |
z |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z)) |
(/.f64 (/.f64 #s(literal -2 binary64) t) z) |
(/.f64 #s(literal -2 binary64) t) |
#s(literal -2 binary64) |
t |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z)) |
(/.f64 (/.f64 #s(literal 2 binary64) y) z) |
(/.f64 #s(literal 2 binary64) y) |
(/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
(*.f64 x (/.f64 #s(literal 2 binary64) z)) |
(/.f64 #s(literal 2 binary64) z) |
(-.f64 y t) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (-.f64 (*.f64 y z) (*.f64 t z))))) |
#s(approx (* 2 (/ (* x (/ 1 y)) z)) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
#s(approx (/ (* x (/ 1 y)) z) (/.f64 x (*.f64 y z))) |
#s(approx (* x (/ 1 y)) (/.f64 x y)) |
#s(approx x x) |
#s(approx (* x (/ 2 (* z (- y t)))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 z (-.f64 y t))))) |
#s(approx (* x (/ 2 z)) (*.f64 #s(literal 2 binary64) (/.f64 x z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 y (fma.f64 #s(literal -2 binary64) (/.f64 x (*.f64 (pow.f64 t #s(literal 3 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 (pow.f64 t #s(literal 4 binary64)) z))))))))) |
#s(approx (/ 1 y) (/.f64 #s(literal 1 binary64) y)) |
#s(approx y y) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ 2 (* z (- y t))) (-.f64 (*.f64 y (-.f64 (*.f64 y (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 (pow.f64 t #s(literal 4 binary64)) z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 t z))))) |
#s(approx (/ (/ 2 y) z) (/.f64 #s(literal 2 binary64) (*.f64 y z))) |
#s(approx (/ 2 y) (/.f64 #s(literal 2 binary64) y)) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) t)) |
#s(approx (- y t) (-.f64 y t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)) (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))))) y)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)))) y)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) (fma.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z)) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) y)) |
#s(approx (- y t) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t y))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) (*.f64 y z)))) y))) y))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 2 binary64)) x) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 (pow.f64 t #s(literal 3 binary64)) x) (*.f64 y z)))) y) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) z))) y))) y))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 t (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) (*.f64 y z))) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 t #s(literal 3 binary64)) (*.f64 y z))) (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 t #s(literal 2 binary64)) z))) y)) (*.f64 #s(literal -2 binary64) (/.f64 t z))) y)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) y))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (/.f64 t y) #s(literal 1 binary64))))) |
#s(approx z z) |
#s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
#s(approx (/ 2 z) (/.f64 #s(literal 2 binary64) z)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 z (-.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 #s(literal -1 binary64) t)))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 2 binary64)) z))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 3 binary64)) z))))))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 x (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 (pow.f64 y #s(literal 4 binary64)) z))))))))) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 3 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ 2 (* z (- y t))) (fma.f64 t (fma.f64 t (fma.f64 #s(literal 2 binary64) (/.f64 t (*.f64 (pow.f64 y #s(literal 4 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 y #s(literal 2 binary64)) z)))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 y z))))) |
#s(approx (/ -2 t) (/.f64 #s(literal -2 binary64) t)) |
#s(approx t t) |
#s(approx (- y t) (+.f64 y (*.f64 #s(literal -1 binary64) t))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))))) t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)) (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 (pow.f64 t #s(literal 3 binary64)) z)))))) t)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 y (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z)))) t)) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 (pow.f64 t #s(literal 3 binary64)) z))) (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (fma.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 (pow.f64 t #s(literal 2 binary64)) z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))))) t)) |
#s(approx (- y t) (*.f64 t (-.f64 (/.f64 y t) #s(literal 1 binary64)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) (*.f64 t z)))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) z) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 2 binary64))) z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (pow.f64 y #s(literal 3 binary64))) (*.f64 t z)))) t))) t) (*.f64 #s(literal 2 binary64) (/.f64 x z))) t))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 y (*.f64 t z)) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) (*.f64 t z))) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (/ 2 (* z (- y t))) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 t z))) (*.f64 #s(literal -2 binary64) (/.f64 (pow.f64 y #s(literal 2 binary64)) z))) t)) (*.f64 #s(literal 2 binary64) (/.f64 y z))) t) (*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z))) t))) |
#s(approx (- y t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 y t)))))) |
12 calls:
| Time | Variable | Point |
|---|---|---|
| 4.0ms | t | inf |
| 4.0ms | x | 0 |
| 3.0ms | z | -inf |
| 3.0ms | z | inf |
| 3.0ms | x | inf |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z)) |
#s(literal 2 binary64) |
(/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z) |
(*.f64 x (/.f64 #s(literal 1 binary64) y)) |
x |
(/.f64 #s(literal 1 binary64) y) |
#s(literal 1 binary64) |
y |
z |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z)) |
(/.f64 (/.f64 #s(literal -2 binary64) t) z) |
(/.f64 #s(literal -2 binary64) t) |
#s(literal -2 binary64) |
t |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
#s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z)) |
(/.f64 (/.f64 #s(literal 2 binary64) y) z) |
(/.f64 #s(literal 2 binary64) y) |
(/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
(*.f64 x (/.f64 #s(literal 2 binary64) z)) |
(/.f64 #s(literal 2 binary64) z) |
(-.f64 y t) |
| Outputs |
|---|
#s(approx (/ (/ (* 2 x) z) (- y t)) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z)) |
(*.f64 (/.f64 (/.f64 x y) z) #s(literal 2 binary64)) |
(+.f64 (/.f64 (/.f64 x y) z) (/.f64 (/.f64 x y) z)) |
(/.f64 (*.f64 #s(literal 2 binary64) (/.f64 x y)) z) |
(fma.f64 x (/.f64 (/.f64 #s(literal 1 binary64) y) z) (/.f64 (/.f64 x y) z)) |
(fma.f64 (/.f64 x y) (/.f64 #s(literal 1 binary64) z) (/.f64 (/.f64 x y) z)) |
#s(literal 2 binary64) |
(+.f64 #s(literal 1 binary64) #s(literal 1 binary64)) |
(neg.f64 #s(literal -2 binary64)) |
(*.f64 (/.f64 x y) (/.f64 #s(literal 1 binary64) z)) |
(*.f64 x (/.f64 (/.f64 #s(literal 1 binary64) y) z)) |
(/.f64 (/.f64 x y) z) |
(/.f64 (neg.f64 (/.f64 x y)) (neg.f64 z)) |
(*.f64 x (/.f64 #s(literal 1 binary64) y)) |
(*.f64 (/.f64 #s(literal 1 binary64) y) x) |
(/.f64 x y) |
(/.f64 (*.f64 x #s(literal 1 binary64)) y) |
x |
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) y)) |
(/.f64 #s(literal 1 binary64) y) |
(/.f64 #s(literal -1 binary64) (neg.f64 y)) |
(pow.f64 y #s(literal -1 binary64)) |
#s(literal 1 binary64) |
(cosh.f64 #s(literal 0 binary64)) |
(exp.f64 #s(literal 0 binary64)) |
y |
z |
(*.f64 x #s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal -2 binary64) (*.f64 t z))) |
(*.f64 (/.f64 #s(literal -2 binary64) t) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 (/.f64 #s(literal -2 binary64) t) z) |
(/.f64 #s(literal -2 binary64) (*.f64 t z)) |
(/.f64 (neg.f64 (/.f64 #s(literal -2 binary64) t)) (neg.f64 z)) |
(*.f64 #s(literal -2 binary64) (/.f64 #s(literal 1 binary64) t)) |
(/.f64 #s(literal -2 binary64) t) |
(/.f64 #s(literal 2 binary64) (neg.f64 t)) |
#s(literal -2 binary64) |
(neg.f64 #s(literal 2 binary64)) |
t |
(*.f64 x #s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal 2 binary64) (*.f64 z y)))) |
#s(approx (/ (/ 2 z) (- y t)) (/.f64 #s(literal 2 binary64) (*.f64 z y))) |
(*.f64 (/.f64 #s(literal 2 binary64) y) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 (/.f64 #s(literal 2 binary64) y) z) |
(/.f64 #s(literal 2 binary64) (*.f64 z y)) |
(/.f64 (neg.f64 (/.f64 #s(literal 2 binary64) y)) (neg.f64 z)) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) y)) |
(/.f64 #s(literal 2 binary64) y) |
(/.f64 #s(literal -2 binary64) (neg.f64 y)) |
(*.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (/.f64 #s(literal 1 binary64) (-.f64 y t))) |
(*.f64 (/.f64 #s(literal 2 binary64) (*.f64 (-.f64 y t) z)) x) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 (-.f64 y t) z))) |
(*.f64 (*.f64 x #s(literal 2 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 y t) z))) |
(/.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (-.f64 y t)) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 (-.f64 y t) z)) |
(/.f64 (neg.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z)) (neg.f64 (-.f64 y t))) |
(/.f64 (neg.f64 (*.f64 x #s(literal 2 binary64))) (neg.f64 (*.f64 (-.f64 y t) z))) |
(*.f64 x (/.f64 #s(literal 2 binary64) z)) |
(*.f64 (/.f64 #s(literal 2 binary64) z) x) |
(/.f64 (*.f64 x #s(literal 2 binary64)) z) |
(*.f64 #s(literal 2 binary64) (/.f64 #s(literal 1 binary64) z)) |
(/.f64 #s(literal 2 binary64) z) |
(/.f64 #s(literal -2 binary64) (neg.f64 z)) |
(+.f64 y (neg.f64 t)) |
(-.f64 y t) |
(neg.f64 (-.f64 t y)) |
Compiled 2 837 to 634 computations (77.7% saved)
12 alts after pruning (0 fresh and 12 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 119 | 0 | 119 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 4 | 4 |
| Done | 0 | 8 | 8 |
| Total | 119 | 12 | 131 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 90.4% | (/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
| ✓ | 93.9% | (/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| ✓ | 94.7% | (*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
| ✓ | 51.6% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
| ✓ | 57.4% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
| ✓ | 51.3% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
| ✓ | 56.8% | (*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
| ✓ | 50.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
| ✓ | 50.7% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z))) |
| ✓ | 51.3% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| ✓ | 56.5% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
| ✓ | 56.9% | #s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
Compiled 184 to 156 computations (15.2% saved)
Total 0.0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
| Outputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
| Outputs |
|---|
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| Outputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
| Outputs |
|---|
(*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
| Inputs |
|---|
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 x (*.f64 t z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 x (*.f64 y z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal -2 binary64) (*.f64 t z)))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 #s(literal 2 binary64) (*.f64 y z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal -2 binary64) (/.f64 (/.f64 x t) z))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (/.f64 x y) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal -2 binary64) t) z))) |
(*.f64 x #s(approx (/ 2 (* z (- y t))) (/.f64 (/.f64 #s(literal 2 binary64) y) z))) |
(*.f64 x (/.f64 #s(literal 2 binary64) (*.f64 z (-.f64 y t)))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(*.f64 x (/.f64 (/.f64 #s(literal 2 binary64) z) (-.f64 y t))) |
(/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
(/.f64 (/.f64 (*.f64 x #s(literal 2 binary64)) z) (-.f64 y t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 x (/.f64 #s(literal 1 binary64) y)) z))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
(/.f64 (*.f64 x #s(literal 2 binary64)) #s(approx (- (* y z) (* t z)) (*.f64 t (-.f64 (/.f64 (*.f64 y z) t) z)))) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal -2 binary64) (/.f64 x z) (*.f64 #s(literal -2 binary64) (/.f64 (*.f64 x y) (*.f64 t z)))) t)) |
#s(approx (/ (* x 2) (- (* y z) (* t z))) (/.f64 (fma.f64 #s(literal 2 binary64) (/.f64 x z) (*.f64 #s(literal 2 binary64) (/.f64 (*.f64 t x) (*.f64 y z)))) y)) |
| Outputs |
|---|
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
(/.f64 (*.f64 x (/.f64 #s(literal 2 binary64) z)) (-.f64 y t)) |
(/.f64 (*.f64 x #s(literal 2 binary64)) (*.f64 z (-.f64 y t))) |
42 calls:
| 41.0ms | z |
| 30.0ms | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 24.0ms | t |
| 9.0ms | y |
| 8.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 56.9% | 1 | z |
| 56.9% | 1 | (*.f64 x #s(literal 2 binary64)) |
| 56.9% | 1 | x |
| 56.9% | 1 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 56.9% | 1 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 56.9% | 1 | t |
| 56.9% | 1 | y |
| 79.8% | 3 | y |
| 79.8% | 3 | y |
| 80.0% | 3 | y |
| 66.2% | 4 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 68.4% | 6 | (*.f64 x #s(literal 2 binary64)) |
| 69.0% | 6 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 68.4% | 6 | x |
| 80.4% | 3 | y |
| 65.0% | 4 | z |
| 78.0% | 3 | t |
| 93.7% | 1 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 93.7% | 1 | (*.f64 x #s(literal 2 binary64)) |
| 93.7% | 1 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 93.7% | 1 | x |
| 93.7% | 1 | y |
| 93.7% | 1 | z |
| 93.7% | 1 | t |
| 93.9% | 1 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 93.9% | 1 | (*.f64 x #s(literal 2 binary64)) |
| 93.9% | 1 | x |
| 93.9% | 1 | y |
| 93.9% | 1 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 93.9% | 1 | z |
| 93.9% | 1 | t |
| 94.7% | 1 | t |
| 94.7% | 1 | z |
| 94.7% | 1 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 94.7% | 1 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 99.0% | 3 | (-.f64 (*.f64 y z) (*.f64 t z)) |
| 94.7% | 1 | (*.f64 x #s(literal 2 binary64)) |
| 99.0% | 3 | (/.f64 (*.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 y z) (*.f64 t z))) |
| 94.7% | 1 | x |
| 94.7% | 1 | y |
| 96.7% | 2 | z |
| 94.7% | 1 | t |
Compiled 438 to 316 computations (27.9% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.301704282799139e-304 | 6.727755447944197e-294 |
| 0.0ms | -4.275306911521242e-190 | -3.929123307124048e-193 |
Compiled 14 to 17 computations (-21.4% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 26.0ms | 4.3559935196488256e-12 | 6.73658117112616e-8 |
| 91.0ms | -1.3279790540815144e-75 | -1.1732705593472648e-79 |
| 96.0ms | 256× | 0 | valid |
Compiled 526 to 481 computations (8.6% saved)
ival-mult!: 7.0ms (61.4% of total)ival-div!: 3.0ms (26.3% of total)ival-sub!: 2.0ms (17.5% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 2.0ms | 4.3559935196488256e-12 | 6.73658117112616e-8 |
| 2.0ms | -1.3279790540815144e-75 | -1.1732705593472648e-79 |
Compiled 558 to 497 computations (10.9% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 2.0ms | 4.3559935196488256e-12 | 6.73658117112616e-8 |
| 2.0ms | -1.3279790540815144e-75 | -1.1732705593472648e-79 |
Compiled 622 to 529 computations (15% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 2.0ms | 4.3559935196488256e-12 | 6.73658117112616e-8 |
| 2.0ms | -1.3279790540815144e-75 | -1.1732705593472648e-79 |
Compiled 622 to 529 computations (15% saved)
| 1× | done |
Compiled 349 to 65 computations (81.4% saved)
(negabs x)
Compiled 1 058 to 447 computations (57.8% saved)
Loading profile data...