
Time bar (total: 3.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.7% | 0.3% | 0% | 0% | 0% | 0 |
| 100% | 99.7% | 0% | 0.3% | 0% | 0% | 0% | 1 |
Compiled 17 to 15 computations (11.8% saved)
| 628.0ms | 8 256× | 0 | valid |
ival-add!: 199.0ms (55.3% of total)ival-mult!: 159.0ms (44.2% of total)adjust: 2.0ms (0.6% of total)| Ground Truth | Overpredictions | Example | Underpredictions | Example | Subexpression |
|---|---|---|---|---|---|
| 16 | 0 | - | 0 | - | (*.f64 (*.f64 a z) b) |
| 7 | 0 | - | 0 | - | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 3 | 0 | - | 0 | - | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
| 0 | 0 | - | 0 | - | (+.f64 x (*.f64 y z)) |
| 0 | 0 | - | 0 | - | a |
| 0 | 0 | - | 0 | - | t |
| 0 | 0 | - | 0 | - | z |
| 0 | 0 | - | 0 | - | y |
| 0 | 0 | - | 0 | - | (*.f64 a z) |
| 0 | 0 | - | 0 | - | b |
| 0 | 0 | - | 0 | - | (*.f64 y z) |
| 0 | 0 | - | 0 | - | (*.f64 t a) |
| 0 | 0 | - | 0 | - | x |
| Operator | Subexpression | Explanation | Count | |
|---|---|---|---|---|
*.f64 | (*.f64 (*.f64 a z) b) | n*o | 8 | 0 |
+.f64 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) | nan-rescue | 7 | 0 |
| ↳ | (+.f64 x (*.f64 y z)) | overflow | 34 | |
| ↳ | (*.f64 y z) | overflow | 34 | |
| ↳ | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) | overflow | 64 | |
| ↳ | (*.f64 t a) | overflow | 37 | |
| ↳ | (*.f64 a z) | overflow | 26 | |
| ↳ | (*.f64 (*.f64 a z) b) | overflow | 47 | |
+.f64 | (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) | nan-rescue | 3 | 0 |
| ↳ | (+.f64 x (*.f64 y z)) | overflow | 34 | |
| ↳ | (*.f64 y z) | overflow | 34 | |
| ↳ | (*.f64 t a) | overflow | 37 |
| Predicted + | Predicted - | |
|---|---|---|
| + | 14 | 0 |
| - | 2 | 240 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 14 | 0 | 0 |
| - | 2 | 0 | 240 |
| number | freq |
|---|---|
| 0 | 240 |
| 1 | 14 |
| 2 | 2 |
| Predicted + | Predicted Maybe | Predicted - | |
|---|---|---|---|
| + | 1 | 0 | 0 |
| - | 0 | 0 | 0 |
| 37.0ms | 512× | 0 | valid |
Compiled 117 to 43 computations (63.2% saved)
ival-mult!: 9.0ms (71% of total)ival-add!: 3.0ms (23.7% of total)adjust: 0.0ms (0% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 120 | 434 |
| 1 | 484 | 378 |
| 2 | 1879 | 371 |
| 3 | 3968 | 370 |
| 4 | 6161 | 370 |
| 5 | 7426 | 370 |
| 6 | 7749 | 370 |
| 7 | 7806 | 370 |
| 8 | 7833 | 370 |
| 0 | 13 | 15 |
| 0 | 20 | 15 |
| 1 | 42 | 13 |
| 2 | 126 | 13 |
| 3 | 360 | 13 |
| 4 | 750 | 13 |
| 5 | 1039 | 13 |
| 6 | 1111 | 13 |
| 7 | 1167 | 13 |
| 8 | 1206 | 13 |
| 0 | 1206 | 10 |
| 1× | iter limit |
| 1× | saturated |
| 1× | iter limit |
| 1× | node limit |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(fma.f64 (fma.f64 b z t) a (fma.f64 z y x)) |
Compiled 15 to 13 computations (13.3% saved)
Compiled 0 to 6 computations (-∞% saved)
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 94.6% | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
Compiled 15 to 13 computations (13.3% saved)
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
(+.f64 x (*.f64 y z)) |
x |
(*.f64 y z) |
y |
z |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
b |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y z))) |
#s(approx (+ x (* y z)) #s(hole binary64 (+ x (* y z)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 x)) |
#s(approx (+ x (* y z)) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* y z) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* t a) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 3.0ms | a | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | x | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | z | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) (+ x (* y z)) x (* y z) y z (* t a) t a (* (* a z) b) (* a z) b) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 245 | 1448 |
| 0 | 256 | 1291 |
| 1 | 1565 | 1291 |
| 0 | 8811 | 1120 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
(+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) |
(+.f64 x (*.f64 y z)) |
x |
(*.f64 y z) |
y |
z |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y z))) |
#s(approx (+ x (* y z)) #s(hole binary64 (+ x (* y z)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 x)) |
#s(approx (+ x (* y z)) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* y z) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ x (* y z)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* t a) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
| Outputs |
|---|
(/.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (neg.f64 a) z) b) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (fma.f64 (*.f64 (*.f64 (neg.f64 a) z) b) (*.f64 (*.f64 (neg.f64 a) z) b) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 (neg.f64 a) z) b))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (fma.f64 a t (fma.f64 z y x)))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 (fma.f64 b z t) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) (*.f64 (-.f64 x (*.f64 z y)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))))) (*.f64 (-.f64 x (*.f64 z y)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (fma.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) (*.f64 (-.f64 x (*.f64 z y)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))))) (*.f64 (-.f64 x (*.f64 z y)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (fma.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (fma.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))))) (*.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 (*.f64 b z) a (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 (*.f64 a z) b (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 b (*.f64 a z) (fma.f64 a t (fma.f64 z y x))) |
(fma.f64 a (*.f64 b z) (fma.f64 a t (fma.f64 z y x))) |
(-.f64 (/.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))) |
(-.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 (neg.f64 a) z) b)) |
(+.f64 (/.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 a t (fma.f64 z y x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (fma.f64 a t (fma.f64 z y x))) |
(+.f64 (fma.f64 a t (fma.f64 z y x)) (*.f64 (*.f64 b z) a)) |
(+.f64 (fma.f64 z y x) (*.f64 (fma.f64 b z t) a)) |
(/.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 t) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (fma.f64 (*.f64 (neg.f64 t) a) (*.f64 (neg.f64 t) a) (*.f64 (fma.f64 z y x) (*.f64 (neg.f64 t) a))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t x) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 (fma.f64 a t x) (fma.f64 a t x) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (fma.f64 a t x) (*.f64 z y))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (fma.f64 a t (*.f64 z y)) x)))) |
(/.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (fma.f64 z y x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (fma.f64 z y x))))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (fma.f64 a t (*.f64 z y))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (pow.f64 (*.f64 a t) #s(literal 2 binary64)))) (neg.f64 (-.f64 (fma.f64 z y x) (*.f64 a t)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y))))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t)))))) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64))) (-.f64 x (fma.f64 a t (*.f64 z y)))) |
(/.f64 (-.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (pow.f64 (*.f64 a t) #s(literal 2 binary64))) (-.f64 (fma.f64 z y x) (*.f64 a t))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y)))))) |
(/.f64 (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64))) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t))))) |
(fma.f64 a t (fma.f64 z y x)) |
(fma.f64 t a (fma.f64 z y x)) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (fma.f64 a t (*.f64 z y)))) (/.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (-.f64 x (fma.f64 a t (*.f64 z y))))) |
(-.f64 (/.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (fma.f64 z y x) (*.f64 a t))) (/.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (fma.f64 z y x) (*.f64 a t)))) |
(-.f64 (fma.f64 z y x) (*.f64 (neg.f64 t) a)) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y)))))) (/.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (fma.f64 a t (*.f64 z y)) #s(literal 2 binary64)) (*.f64 x (fma.f64 a t (*.f64 z y))))))) |
(+.f64 (/.f64 (pow.f64 (fma.f64 z y x) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t))))) (/.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (+.f64 (pow.f64 (fma.f64 z y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (fma.f64 z y x) (*.f64 a t)))))) |
(+.f64 (fma.f64 a t x) (*.f64 z y)) |
(+.f64 (fma.f64 a t (*.f64 z y)) x) |
(+.f64 (*.f64 a t) (fma.f64 z y x)) |
(+.f64 (fma.f64 z y x) (*.f64 a t)) |
(+.f64 x (fma.f64 a t (*.f64 z y))) |
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 y) z) #s(literal 3 binary64))) (fma.f64 x x (fma.f64 (*.f64 (neg.f64 y) z) (*.f64 (neg.f64 y) z) (*.f64 x (*.f64 (neg.f64 y) z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 x (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) |
(fma.f64 z y x) |
(fma.f64 y z x) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 x (*.f64 z y)))) |
(-.f64 x (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(+.f64 (*.f64 z y) x) |
(+.f64 x (*.f64 z y)) |
x |
(*.f64 z y) |
(*.f64 y z) |
y |
z |
(*.f64 a t) |
(*.f64 t a) |
t |
a |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 (*.f64 a z) b) |
(*.f64 b (*.f64 a z)) |
(*.f64 a (*.f64 b z)) |
(*.f64 a z) |
(*.f64 z a) |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (*.f64 z y))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx (+ x (* y z)) (*.f64 z y)) |
#s(approx (+ x (* y z)) (fma.f64 z y x)) |
#s(approx x x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ x (* y z)) x) |
#s(approx (+ x (* y z)) (*.f64 (fma.f64 y (/.f64 z x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ x (* y z)) (* t a)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ x (* y z)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 z y) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t x)) |
#s(approx (* y z) (*.f64 z y)) |
#s(approx y y) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 z y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) y) z) y)) |
#s(approx (+ x (* y z)) (*.f64 (+.f64 (/.f64 x y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) y) z)))) |
#s(approx (+ x (* y z)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x y) z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx z z) |
#s(approx (* (* a z) b) (*.f64 (*.f64 b z) a)) |
#s(approx (* a z) (*.f64 a z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) z) y) z)) |
#s(approx (+ x (* y z)) (*.f64 (+.f64 (/.f64 x z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) z) y)))) |
#s(approx (+ x (* y z)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 z y x)) |
#s(approx (* t a) (*.f64 a t)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 a t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) t) a) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) t) a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) a) t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) a) t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))) b))) |
Compiled 3 777 to 511 computations (86.5% saved)
10 alts after pruning (10 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 133 | 10 | 143 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 134 | 10 | 144 |
| Status | Accuracy | Program |
|---|---|---|
| 53.4% | (+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) | |
| ▶ | 76.7% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
| ▶ | 51.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| 52.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) | |
| 52.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) | |
| ▶ | 51.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| 29.3% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) | |
| ▶ | 27.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| 28.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) | |
| ▶ | 26.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 400 to 304 computations (24% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 b z t) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(fma.f64 z y x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(fma.f64 b a y) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y z))) |
#s(approx (+ (* z y) x) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (* z y) x) #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | b | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 3.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | b | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) b z t a x (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* z y) y (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* z y) x) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 345 | 1907 |
| 0 | 352 | 1601 |
| 1 | 2139 | 1597 |
| 0 | 9675 | 1560 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 b z t) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(fma.f64 z y x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(fma.f64 b a y) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y z))) |
#s(approx (+ (* z y) x) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (* z y) x) #s(hole binary64 x)) |
#s(approx (+ (* z y) x) #s(hole binary64 (* x (+ 1 (/ (* y z) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y z) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* y (+ z (/ x y))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ x y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* z (+ y (/ x z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* z y) x) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ x z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(/.f64 (+.f64 (pow.f64 (fma.f64 a t x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (fma.f64 (fma.f64 a t x) (fma.f64 a t x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (fma.f64 a t x) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (fma.f64 b z t) a) x))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 (fma.f64 b z t) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (fma.f64 b z t) a) x)) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64))) (-.f64 x (*.f64 (fma.f64 b z t) a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x)))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a))))) |
(fma.f64 (fma.f64 b z t) a x) |
(fma.f64 a (fma.f64 b z t) x) |
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 b z t) a) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (fma.f64 b z t) a) x))) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 (fma.f64 b z t) a))) (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 x (*.f64 (fma.f64 b z t) a)))) |
(-.f64 x (*.f64 (neg.f64 a) (fma.f64 b z t))) |
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 (fma.f64 b z t) a) x))))) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a))))) (/.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 b z t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 (fma.f64 b z t) a)))))) |
(+.f64 (fma.f64 a t x) (*.f64 (*.f64 b z) a)) |
(+.f64 (*.f64 (fma.f64 b z t) a) x) |
(+.f64 x (*.f64 (fma.f64 b z t) a)) |
(/.f64 (neg.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64)))) (neg.f64 (-.f64 t (*.f64 b z)))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 b z) t))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64)))) (neg.f64 (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64))) (-.f64 t (*.f64 b z))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 b z) t)) |
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) |
(fma.f64 b z t) |
(fma.f64 z b t) |
(-.f64 (/.f64 (*.f64 t t) (-.f64 t (*.f64 b z))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 t (*.f64 b z)))) |
(-.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 b z) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 b z) t))) |
(-.f64 t (*.f64 (neg.f64 b) z)) |
(+.f64 (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(+.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(+.f64 (*.f64 b z) t) |
(+.f64 t (*.f64 b z)) |
b |
z |
t |
a |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
(*.f64 z y) |
(*.f64 y z) |
y |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 z y) x))) |
(/.f64 (neg.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 x (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 z y) x)) |
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 x (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) |
(fma.f64 z y x) |
(fma.f64 y z x) |
(-.f64 (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 z y) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 z y) x))) |
(-.f64 (/.f64 (*.f64 x x) (-.f64 x (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 x (*.f64 z y)))) |
(-.f64 x (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 z y) x))))) |
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (fma.f64 x x (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 x (*.f64 z y)))))) |
(+.f64 (*.f64 z y) x) |
(+.f64 x (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
(*.f64 (fma.f64 b a y) z) |
(*.f64 z (fma.f64 b a y)) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z (*.f64 b a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 z (*.f64 b a)) (*.f64 z (*.f64 b a))) (*.f64 (*.f64 z y) (*.f64 z (*.f64 b a)))))) |
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 z y) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 z y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) |
(fma.f64 (*.f64 b a) z (*.f64 z y)) |
(fma.f64 (*.f64 b z) a (*.f64 z y)) |
(fma.f64 b (*.f64 a z) (*.f64 z y)) |
(fma.f64 (*.f64 a z) b (*.f64 z y)) |
(fma.f64 a (*.f64 b z) (*.f64 z y)) |
(fma.f64 z y (*.f64 z (*.f64 b a))) |
(fma.f64 z y (*.f64 (*.f64 b z) a)) |
(fma.f64 y z (*.f64 z (*.f64 b a))) |
(fma.f64 y z (*.f64 (*.f64 b z) a)) |
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))) |
(-.f64 (*.f64 (*.f64 b z) a) (*.f64 (neg.f64 y) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y))))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (*.f64 z y)) |
(+.f64 (*.f64 z y) (*.f64 z (*.f64 b a))) |
(+.f64 (*.f64 z y) (*.f64 (*.f64 b z) a)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y y))) (neg.f64 (-.f64 (*.f64 b a) y))) |
(/.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) (neg.f64 (-.f64 y (*.f64 b a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y y)) (-.f64 (*.f64 b a) y)) |
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (-.f64 y (*.f64 b a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y)))) |
(/.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a))))) |
(fma.f64 b a y) |
(fma.f64 a b y) |
(-.f64 (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 b a) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 b a) y))) |
(-.f64 (/.f64 (*.f64 y y) (-.f64 y (*.f64 b a))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 y (*.f64 b a)))) |
(-.f64 y (*.f64 (neg.f64 a) b)) |
(+.f64 (/.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y)))) (/.f64 (pow.f64 y #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 y y) (*.f64 (*.f64 b a) y))))) |
(+.f64 (/.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a))))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 y (*.f64 b a)))))) |
(+.f64 (*.f64 b a) y) |
(+.f64 y (*.f64 b a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z (*.f64 a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx x x) |
#s(approx (+ (* z y) x) (*.f64 z y)) |
#s(approx (+ (* z y) x) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a (/.f64 (fma.f64 b z t) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* z y) x) x) |
#s(approx (+ (* z y) x) (*.f64 (fma.f64 y (/.f64 z x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* (+ (* b z) t) a) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 (fma.f64 b z t) a) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* z y) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 z y) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (* z y) (*.f64 z y)) |
#s(approx y y) |
#s(approx (* (+ (* b a) y) z) (*.f64 (*.f64 b z) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
#s(approx (+ (* b a) y) (fma.f64 b a y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (* z y) x) (*.f64 (+.f64 (/.f64 x y) z) y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 z y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) y) z) y)) |
#s(approx (+ (* b a) y) y) |
#s(approx (+ (* b a) y) (*.f64 (fma.f64 a (/.f64 b y) #s(literal 1 binary64)) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (* z y) x) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x y) z)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) y) z)))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 (*.f64 b a) y)) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 a t x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx z z) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (+ (* z y) x) (*.f64 (+.f64 (/.f64 x z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (+ (* z y) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 x z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (*.f64 b a) z x)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 a t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (fma.f64 b z (/.f64 x a)) t) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b z (/.f64 (*.f64 z y) a)) a)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y a) b) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (neg.f64 (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (fma.f64 b z (/.f64 x a)) t)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (*.f64 z y) a))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 a) (-.f64 (neg.f64 b) (/.f64 y a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t x) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a z (/.f64 (*.f64 z y) b)) b)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y b) a) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t x) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 z y) b))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 b) (-.f64 (neg.f64 a) (/.f64 y b)))) |
Compiled 6 557 to 746 computations (88.6% saved)
11 alts after pruning (7 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 203 | 3 | 206 |
| Fresh | 1 | 4 | 5 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 0 | 0 |
| Total | 205 | 11 | 216 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 53.4% | (+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
| 52.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) | |
| ▶ | 52.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
| ✓ | 51.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| 52.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) | |
| ✓ | 51.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| ▶ | 29.3% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| ▶ | 28.2% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 27.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ▶ | 28.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 26.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 398 to 294 computations (26.1% saved)
| Inputs |
|---|
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
a |
z |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b z) a) |
(*.f64 b z) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (* (* b z) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* a t) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (* b a) #s(hole binary64 (* a b))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 24.0ms | z | @ | 0 | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) x (* (* a z) b) (* a z) a z b (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z)) |
| 2.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) x (* (* a z) b) (* a z) a z b (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z)) |
| 2.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) x (* (* a z) b) (* a z) a z b (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z)) |
| 2.0ms | b | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) x (* (* a z) b) (* a z) a z b (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z)) |
| 2.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (+ x (* y z)) (* t a)) x (* (* a z) b) (* a z) a z b (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* a t) t (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+ (* (+ (* b z) t) a) x) (+ (* b z) t) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b a) y) z) (+ (* b a) y) (* b a) (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (* b z) a) (* b z)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 376 | 2300 |
| 0 | 387 | 2094 |
| 1 | 2318 | 2090 |
| 0 | 10548 | 1819 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
(*.f64 (*.f64 a z) b) |
(*.f64 a z) |
a |
z |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b z) a) |
(*.f64 b z) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (+ t (* b z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 x)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* x (+ 1 (/ (* a (+ t (* b z))) x))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* a (+ t (* b z))) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (+ (* a (* b z)) (* y z)))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a b))) |
#s(approx (+ (* b a) y) #s(hole binary64 (+ y (* a b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y z))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* y (+ z (/ (* a (* b z)) y))))) |
#s(approx (+ (* b a) y) #s(hole binary64 y)) |
#s(approx (+ (* b a) y) #s(hole binary64 (* y (+ 1 (/ (* a b) y))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* a (* b z)) y))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* y (- (* -1 (/ (* a b) y)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (* a z) b) #s(hole binary64 (* a (* b z)))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (* (* b z) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* b z) #s(hole binary64 (* b z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* z (+ (* a b) (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (* a t) #s(hole binary64 (* a t))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (+ x (* a (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a t))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* a (* b z)) t)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* a (* b z))) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (* b a) #s(hole binary64 (* a b))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* a (+ t (+ (* b z) (/ x a)))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* a (+ (* b z) (/ (* y z) a))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* a (+ b (/ y a))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* a (+ (* -1 (+ t (* b z))) (* -1 (/ x a))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* a (+ (* -1 (* b z)) (* -1 (/ (* y z) a))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* a (+ (* -1 b) (* -1 (/ y a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (/ (* a t) b)))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* b (+ (* a z) (/ (* y z) b))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* b (+ a (/ y b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (+ (* (+ (* b z) t) a) x) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (* a t)) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (* (+ (* b a) y) z) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* y z) b))))))) |
#s(approx (+ (* b a) y) #s(hole binary64 (* -1 (* b (+ (* -1 a) (* -1 (/ y b))))))) |
| Outputs |
|---|
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 b z) a #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 b (*.f64 a z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 a (*.f64 b z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(-.f64 (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))) |
(-.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 (neg.f64 a) z) b)) |
(+.f64 (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 (*.f64 a z) b) |
(*.f64 b (*.f64 a z)) |
(*.f64 a (*.f64 b z)) |
(*.f64 a z) |
(*.f64 z a) |
a |
z |
b |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
(*.f64 a t) |
(*.f64 t a) |
t |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x (*.f64 #s(approx (+ (* b z) t) t) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) |
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)))) |
(fma.f64 #s(approx (+ (* b z) t) t) a x) |
(fma.f64 a #s(approx (+ (* b z) t) t) x) |
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))) |
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* b z) t) t) a) #s(literal 2 binary64)) (-.f64 (*.f64 x x) (*.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x))))) |
(+.f64 (*.f64 #s(approx (+ (* b z) t) t) a) x) |
(+.f64 x (*.f64 #s(approx (+ (* b z) t) t) a)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
(*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z) |
(*.f64 z #s(approx (+ (* b a) y) (*.f64 b a))) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
(*.f64 b a) |
(*.f64 a b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
(*.f64 (*.f64 b a) z) |
(*.f64 (*.f64 b z) a) |
(*.f64 (*.f64 a z) b) |
(*.f64 b (*.f64 a z)) |
(*.f64 a (*.f64 b z)) |
(*.f64 b z) |
(*.f64 z b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z (*.f64 a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (*.f64 z y))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx x x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (* (+ (* b z) t) a) x) x) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a (/.f64 (fma.f64 b z t) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ x (* y z)) (* t a)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (* (+ (* b z) t) a) x) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (*.f64 (fma.f64 b z t) a) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t x)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (*.f64 b z) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (* b a) y) (*.f64 b a)) |
#s(approx (+ (* b a) y) (fma.f64 b a y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 z y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) y) z) y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 z y)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) y) z) y)) |
#s(approx (+ (* b a) y) y) |
#s(approx (+ (* b a) y) (*.f64 (fma.f64 a (/.f64 b y) #s(literal 1 binary64)) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) y) z)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) y) z)))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 (*.f64 b a) y)) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx (* (* b z) a) (*.f64 (*.f64 b z) a)) |
#s(approx (* a z) (*.f64 a z)) |
#s(approx z z) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 a t x)) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b a y) z)) |
#s(approx (* (* b z) a) (*.f64 (*.f64 b z) a)) |
#s(approx (* b z) (*.f64 b z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) z) y) z)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) z) y)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 z y x)) |
#s(approx (* a t) (*.f64 a t)) |
#s(approx t t) |
#s(approx (+ (* (+ (* b z) t) a) x) (fma.f64 (*.f64 b a) z x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 a t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) t) a) t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 a t)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) t) a)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 (*.f64 b a) z x) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 (fma.f64 b a y) z (*.f64 a t)) x)) |
#s(approx a a) |
#s(approx (* b a) (*.f64 b a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) a) t) a)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (+.f64 (fma.f64 b z (/.f64 x a)) t) a)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 b z (/.f64 (*.f64 z y) a)) a)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y a) b) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (neg.f64 (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) a) t)))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (fma.f64 b z (/.f64 x a)) t)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (*.f64 z y) a))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 a) (-.f64 (neg.f64 b) (/.f64 y a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t x) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (* (+ (* b a) y) z) (*.f64 (fma.f64 a z (/.f64 (*.f64 z y) b)) b)) |
#s(approx (+ (* b a) y) (*.f64 (+.f64 (/.f64 y b) a) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (+ (* (+ (* b z) t) a) x) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t x) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
#s(approx (* (+ (* b a) y) z) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 z y) b))))) |
#s(approx (+ (* b a) y) (*.f64 (neg.f64 b) (-.f64 (neg.f64 a) (/.f64 y b)))) |
Compiled 4 850 to 517 computations (89.3% saved)
10 alts after pruning (2 fresh and 8 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 165 | 1 | 166 |
| Fresh | 1 | 1 | 2 |
| Picked | 1 | 4 | 5 |
| Done | 0 | 4 | 4 |
| Total | 167 | 10 | 177 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 53.4% | (fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
| ✓ | 52.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
| ✓ | 51.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| ▶ | 52.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
| ✓ | 51.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| ✓ | 29.3% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| ✓ | 28.2% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 27.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ✓ | 28.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 26.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 209 to 157 computations (24.9% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(fma.f64 b z t) |
b |
z |
t |
a |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(*.f64 a z) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 x)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* y z))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a t))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (+ (* a t) (* a (* b z))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* z (+ (* a b) (/ (* a t) z))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (* a t) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* t (+ a (/ (* a (* b z)) t))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a t))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (* a (* b z)) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* b (+ (* a z) (/ (* a t) b))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* a t) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
18 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 19.0ms | a | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) b z t a (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) (* a z) (+ (+ x (* y z)) (* t a)) x) |
| 1.0ms | a | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) b z t a (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) (* a z) (+ (+ x (* y z)) (* t a)) x) |
| 1.0ms | z | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) b z t a (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) (* a z) (+ (+ x (* y z)) (* t a)) x) |
| 1.0ms | z | @ | inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) b z t a (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) (* a z) (+ (+ x (* y z)) (* t a)) x) |
| 1.0ms | t | @ | -inf | ((+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (* (+ (* b z) t) a) (+ (* b z) t) b z t a (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) (* a z) (+ (+ x (* y z)) (* t a)) x) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 303 | 2476 |
| 0 | 308 | 2097 |
| 1 | 1811 | 2095 |
| 0 | 8463 | 1906 |
| 1× | iter limit |
| 1× | node limit |
| 1× | iter limit |
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(fma.f64 b z t) |
b |
z |
t |
a |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(*.f64 a z) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ (* a t) (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (+ (* a (* b z)) (* y z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ (* a t) (* y z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 x)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (+ (/ (* a (* b z)) x) (/ (* y z) x))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 x)) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* x (+ 1 (+ (/ (* a t) x) (/ (* y z) x)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (+ (* a (* b z)) (* y z))) x)) 1))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* a t) (* y z)) x)) 1))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* a (* b z)))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* y z))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* y (+ z (+ (/ x y) (+ (/ (* a t) y) (/ (* a (* b z)) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y z))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* y (+ z (+ (/ x y) (/ (* a t) y)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (+ (* a t) (* a (* b z)))) y))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (+ x (* a t)) y))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a t))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (+ (* a t) (* a (* b z))))) |
#s(approx (+ (* b z) t) #s(hole binary64 t)) |
#s(approx (+ (* b z) t) #s(hole binary64 (+ t (* b z)))) |
#s(approx z #s(hole binary64 z)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (* a t)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* z (+ y (* a b))))))) |
#s(approx (* a z) #s(hole binary64 (* a z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (* b z)))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* z (+ (* a b) (/ (* a t) z))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b z))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* z (+ b (/ t z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* z (+ y (* a b))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* z (+ y (+ (* a b) (+ (/ x z) (/ (* a t) z))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* z (+ y (+ (/ x z) (/ (* a t) z)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* z (+ (* -1 (* a b)) (* -1 (/ (* a t) z))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* z (+ (* -1 b) (* -1 (/ t z))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (* a b))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* z (+ (* -1 y) (+ (* -1 (* a b)) (* -1 (/ (+ x (* a t)) z)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* z (+ (* -1 y) (* -1 (/ (+ x (* a t)) z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx t #s(hole binary64 t)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a (* b z)) (* y z))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* t (+ a (/ (* a (* b z)) t))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* t (+ 1 (/ (* b z) t))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a t))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* t (+ a (+ (/ x t) (+ (/ (* a (* b z)) t) (/ (* y z) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a t))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* t (+ a (+ (/ x t) (/ (* y z) t)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (* a (* b z)) t))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* b z) t)) 1))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (+ (* a (* b z)) (* y z))) t))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* t (+ (* -1 a) (* -1 (/ (+ x (* y z)) t))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx a #s(hole binary64 a)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (* y z)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a (+ t (* b z))) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (+ t (* b z))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (+ t (+ (* b z) (+ (/ x a) (/ (* y z) a))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* a (+ t (+ (/ x a) (/ (* y z) a)))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (* b z))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* a (+ (* -1 t) (+ (* -1 (* b z)) (* -1 (/ (+ x (* y z)) a)))))))) |
#s(approx (+ (+ x (* y z)) (* t a)) #s(hole binary64 (* -1 (* a (+ (* -1 t) (* -1 (/ (+ x (* y z)) a))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx b #s(hole binary64 b)) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (+ x (+ (* a t) (* y z))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* b (+ (* a z) (/ (* a t) b))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* b (+ z (/ t b))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* a (* b z)))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* b (+ (* a z) (+ (/ x b) (+ (/ (* a t) b) (/ (* y z) b))))))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
#s(approx (* (+ (* b z) t) a) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (* a t) b))))))) |
#s(approx (+ (* b z) t) #s(hole binary64 (* -1 (* b (+ (* -1 z) (* -1 (/ t b))))))) |
#s(approx (+ (* (* a z) b) (+ (+ x (* y z)) (* t a))) #s(hole binary64 (* -1 (* b (+ (* -1 (* a z)) (* -1 (/ (+ x (+ (* a t) (* y z))) b))))))) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
(*.f64 (fma.f64 b z t) a) |
(*.f64 a (fma.f64 b z t)) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 (*.f64 a t) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) (*.f64 a t))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64))) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))) |
(/.f64 (+.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))))) |
(fma.f64 (*.f64 b a) z (*.f64 a t)) |
(fma.f64 (*.f64 b z) a (*.f64 a t)) |
(fma.f64 b (*.f64 a z) (*.f64 a t)) |
(fma.f64 (*.f64 a z) b (*.f64 a t)) |
(fma.f64 a (*.f64 b z) (*.f64 a t)) |
(fma.f64 a t (*.f64 (*.f64 b z) a)) |
(fma.f64 t a (*.f64 (*.f64 b z) a)) |
(-.f64 (/.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))) |
(-.f64 (*.f64 a t) (*.f64 (neg.f64 a) (*.f64 b z))) |
(+.f64 (/.f64 (pow.f64 (*.f64 a t) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a))))) (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 a t) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)))))) |
(+.f64 (*.f64 (*.f64 b z) a) (*.f64 a t)) |
(+.f64 (*.f64 a t) (*.f64 (*.f64 b z) a)) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 b z) t))) |
(/.f64 (neg.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64)))) (neg.f64 (-.f64 t (*.f64 b z)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64)))) (neg.f64 (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 b z) t)) |
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 b z) #s(literal 2 binary64))) (-.f64 t (*.f64 b z))) |
(/.f64 (+.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) |
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (*.f64 b z) #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) |
(fma.f64 b z t) |
(fma.f64 z b t) |
(-.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 b z) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 b z) t))) |
(-.f64 (/.f64 (*.f64 t t) (-.f64 t (*.f64 b z))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 t (*.f64 b z)))) |
(-.f64 t (*.f64 (neg.f64 b) z)) |
(+.f64 (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (-.f64 (*.f64 t t) (*.f64 (*.f64 b z) t))))) |
(+.f64 (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z))))) (/.f64 (pow.f64 (*.f64 b z) #s(literal 3 binary64)) (fma.f64 t t (-.f64 (pow.f64 (*.f64 b z) #s(literal 2 binary64)) (*.f64 t (*.f64 b z)))))) |
(+.f64 (*.f64 b z) t) |
(+.f64 t (*.f64 b z)) |
b |
z |
t |
a |
(/.f64 (+.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64))) (fma.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(approx (+ (+ x (* y z)) (* t a)) x) (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (*.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a))))) |
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)))) |
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)))))) |
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))) |
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))))) |
(fma.f64 (*.f64 b a) z #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 b z) a #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 b (*.f64 a z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(fma.f64 a (*.f64 b z) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))) (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)))) |
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x))))) (/.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 b z) a) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)))))) |
(+.f64 (*.f64 (*.f64 b z) a) #s(approx (+ (+ x (* y z)) (* t a)) x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 b z) a)) |
(*.f64 a z) |
(*.f64 z a) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
x |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a (*.f64 z y))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (*.f64 z y))) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx x x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ x (* y z)) (* t a)) x) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x) #s(literal 1 binary64)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 (fma.f64 b z t) a (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ x (* y z)) (* t a)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (fma.f64 a t (*.f64 z y)) x)) #s(literal 1 binary64)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) z) y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 z y)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) y) z) y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 (fma.f64 (fma.f64 b z t) a x) y) #s(literal -1 binary64) (neg.f64 z)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) y) z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (* (+ (* b z) t) a) (*.f64 a t)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (* b z) t) t) |
#s(approx (+ (* b z) t) (fma.f64 b z t)) |
#s(approx z z) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (* a z) (*.f64 a z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (*.f64 b z) a)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b a (/.f64 (*.f64 a t) z)) z)) |
#s(approx (+ (* b z) t) (*.f64 b z)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t z) b) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b a (/.f64 (fma.f64 a t x) z)) y) z)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 a t x) z) y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (*.f64 a t) z))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 z) (-.f64 (neg.f64 b) (/.f64 t z)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (fma.f64 b a y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1 binary64) (fma.f64 b a (/.f64 (fma.f64 a t x) z)) (neg.f64 y)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 a t x) z) y)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx t t) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b a y) z x)) |
#s(approx (+ (+ x (* y z)) (* t a)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 a (/.f64 (*.f64 b z) t) a) t)) |
#s(approx (+ (* b z) t) (*.f64 (fma.f64 b (/.f64 z t) #s(literal 1 binary64)) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) a) t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 a t)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) t) a) t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (fma.f64 a (/.f64 (*.f64 b z) t) a)))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (*.f64 (neg.f64 b) z) t) #s(literal 1 binary64)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 (fma.f64 (fma.f64 b a y) z x) t) #s(literal -1 binary64) (neg.f64 a)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 t) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) t) a)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 b z t) a)) |
#s(approx a a) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (+.f64 (fma.f64 a t x) (*.f64 (fma.f64 b a y) z))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (+.f64 (fma.f64 b z (/.f64 (fma.f64 z y x) a)) t) a)) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (+.f64 (/.f64 (fma.f64 z y x) a) t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (fma.f64 b z t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1 binary64) (fma.f64 b z (/.f64 (fma.f64 z y x) a)) (neg.f64 t)))) |
#s(approx (+ (+ x (* y z)) (* t a)) (*.f64 (neg.f64 a) (*.f64 #s(literal -1 binary64) (+.f64 (/.f64 (fma.f64 z y x) a) t)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx b b) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t (fma.f64 z y x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (* (+ (* b z) t) a) (*.f64 (fma.f64 a z (/.f64 (*.f64 a t) b)) b)) |
#s(approx (+ (* b z) t) (*.f64 (+.f64 (/.f64 t b) z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b)) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
#s(approx (* (+ (* b z) t) a) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (*.f64 a t) b))))) |
#s(approx (+ (* b z) t) (*.f64 (neg.f64 b) (-.f64 (neg.f64 z) (/.f64 t b)))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (neg.f64 b) (*.f64 #s(literal -1 binary64) (fma.f64 a z (/.f64 (fma.f64 a t (fma.f64 z y x)) b))))) |
Compiled 3 868 to 443 computations (88.5% saved)
10 alts after pruning (0 fresh and 10 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 131 | 0 | 131 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 8 | 8 |
| Total | 131 | 10 | 141 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 53.4% | (fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
| ✓ | 52.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
| ✓ | 51.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
| ✓ | 52.6% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
| ✓ | 51.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| ✓ | 29.3% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| ✓ | 28.2% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
| ✓ | 27.5% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| ✓ | 28.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| ✓ | 26.1% | #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
Compiled 521 to 214 computations (58.9% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| Outputs |
|---|
(+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
7 calls:
| 7.0ms | a |
| 5.0ms | y |
| 5.0ms | x |
| 5.0ms | t |
| 5.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 98.1% | 2 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 94.6% | 1 | x |
| 94.6% | 1 | y |
| 94.6% | 1 | z |
| 94.6% | 1 | t |
| 98.4% | 3 | a |
| 94.6% | 1 | b |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
(+.f64 #s(approx (+ (+ x (* y z)) (* t a)) x) (*.f64 (*.f64 a z) b)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) |
7 calls:
| 12.0ms | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 6.0ms | x |
| 5.0ms | t |
| 4.0ms | a |
| 4.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 85.1% | 3 | y |
| 76.7% | 1 | b |
| 80.0% | 3 | x |
| 86.3% | 3 | z |
| 76.7% | 1 | t |
| 87.5% | 3 | a |
| 76.7% | 1 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) (*.f64 b z)) a x)) |
(fma.f64 (*.f64 a z) b #s(approx (+ (+ x (* y z)) (* t a)) x)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) |
3 calls:
| 5.0ms | y |
| 4.0ms | a |
| 4.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 77.6% | 5 | y |
| 76.9% | 3 | z |
| 80.2% | 3 | a |
Compiled 3 to 18 computations (-500% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) |
6 calls:
| 4.0ms | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 3.0ms | x |
| 3.0ms | a |
| 3.0ms | t |
| 3.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 76.9% | 3 | z |
| 72.3% | 4 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 66.6% | 3 | b |
| 65.8% | 4 | t |
| 67.1% | 4 | x |
| 71.5% | 4 | a |
Compiled 20 to 43 computations (-115% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 #s(approx (+ (* b z) t) t) a x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 #s(approx (+ (* b a) y) (*.f64 b a)) z)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (*.f64 b z) a)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) |
4 calls:
| 3.0ms | a |
| 3.0ms | z |
| 3.0ms | y |
| 3.0ms | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| Accuracy | Segments | Branch |
|---|---|---|
| 68.2% | 3 | a |
| 64.0% | 4 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 68.8% | 3 | y |
| 65.6% | 3 | z |
Compiled 18 to 31 computations (-72.2% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
6 calls:
| 5.0ms | z |
| 2.0ms | a |
| 2.0ms | x |
| 2.0ms | y |
| 2.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 52.5% | 1 | t |
| 55.9% | 3 | x |
| 63.6% | 3 | z |
| 52.5% | 1 | b |
| 52.5% | 1 | a |
| 61.1% | 3 | y |
Compiled 6 to 36 computations (-500% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) |
7 calls:
| 2.0ms | t |
| 2.0ms | a |
| 2.0ms | x |
| 2.0ms | z |
| 2.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 33.3% | 3 | b |
| 44.0% | 3 | a |
| 43.2% | 4 | t |
| 46.1% | 4 | x |
| 50.9% | 5 | y |
| 43.7% | 5 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 48.1% | 6 | z |
Compiled 21 to 49 computations (-133.3% saved)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
4 calls:
| 2.0ms | x |
| 1.0ms | z |
| 1.0ms | a |
| 1.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 32.7% | 3 | z |
| 42.5% | 3 | a |
| 42.7% | 3 | x |
| 36.2% | 4 | y |
Compiled 4 to 24 computations (-500% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| Outputs |
|---|
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
7 calls:
| 1.0ms | x |
| 1.0ms | a |
| 1.0ms | t |
| 1.0ms | y |
| 1.0ms | b |
| Accuracy | Segments | Branch |
|---|---|---|
| 26.1% | 1 | z |
| 26.1% | 1 | b |
| 26.1% | 1 | y |
| 26.1% | 1 | (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) |
| 26.1% | 1 | t |
| 26.1% | 1 | a |
| 26.1% | 1 | x |
Compiled 21 to 49 computations (-133.3% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | +inf | NaN |
Compiled 18 to 22 computations (-22.2% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 8.556449145589272e-91 | 1.9731084448053848e-79 |
| 20.0ms | -2.356152404093399e-97 | -6.523345689675864e-103 |
| 23.0ms | 304× | 0 | valid |
Compiled 835 to 649 computations (22.3% saved)
ival-add!: 8.0ms (58.1% of total)ival-mult!: 5.0ms (36.3% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 15.0ms | 1567569008.5329206 | 260676060750987.06 |
| 8.0ms | -2.356152404093399e-97 | -6.523345689675864e-103 |
| 12.0ms | 224× | 0 | valid |
Compiled 774 to 616 computations (20.4% saved)
ival-mult!: 4.0ms (74.9% of total)ival-add!: 1.0ms (18.7% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 9.0ms | 1.964992226350933e-16 | 3.09850429770101e-15 |
| 10.0ms | -2.317798468529253e+78 | -4.9761006821374024e+76 |
| 11.0ms | 208× | 0 | valid |
Compiled 564 to 451 computations (20% saved)
ival-mult!: 4.0ms (79.6% of total)ival-add!: 1.0ms (19.9% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 2.469427147477731e+27 | 1.4965939354903167e+34 |
| 45.0ms | -3.3380834921933514e+34 | -1.5394730537901413e+29 |
| 47.0ms | 288× | 0 | valid |
Compiled 738 to 598 computations (19% saved)
ival-mult!: 36.0ms (95% of total)ival-add!: 2.0ms (5.3% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 10.0ms | 8.651497625397375e+112 | 1.0311893710776115e+115 |
| 13.0ms | -4.016691297918476e+110 | -2.397066428436428e+105 |
| 14.0ms | 256× | 0 | valid |
Compiled 642 to 534 computations (16.8% saved)
ival-mult!: 5.0ms (81.5% of total)ival-add!: 2.0ms (32.6% of total)adjust: 0.0ms (0% of total)| 4× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 28.0ms | 1.5187945813174674e+38 | 6.372723095376124e+50 |
| 13.0ms | 8.062583175066257e-158 | 8.161825697439714e-153 |
| 9.0ms | -1.9586185721431408e-271 | -3.9772193276009416e-272 |
| 1.0ms | -3.3380834921933514e+34 | -1.5394730537901413e+29 |
| 36.0ms | 400× | 0 | valid |
Compiled 1 280 to 1 095 computations (14.5% saved)
ival-mult!: 21.0ms (91% of total)ival-add!: 2.0ms (8.7% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 12.0ms | 1.52100364923489e+51 | 5.3697169499692006e+54 |
| 28.0ms | -332565660938.32916 | -1946373805.738026 |
| 31.0ms | 240× | 0 | valid |
Compiled 558 to 487 computations (12.7% saved)
ival-mult!: 22.0ms (95.2% of total)ival-add!: 1.0ms (4.3% of total)adjust: 0.0ms (0% of total)Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 86 | 477 |
| 1 | 126 | 439 |
| 2 | 210 | 439 |
| 3 | 445 | 439 |
| 4 | 835 | 439 |
| 5 | 1119 | 439 |
| 6 | 1191 | 439 |
| 7 | 1247 | 439 |
| 8 | 1286 | 439 |
| 1× | saturated |
| Inputs |
|---|
(if (<=.f64 (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(literal +inf.0 binary64)) (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z))) |
(if (<=.f64 a #s(literal -3139847368775185/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) (if (<=.f64 a #s(literal 1969113048739589/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)))) |
(if (<=.f64 a #s(literal -6156563468186637/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) (if (<=.f64 a #s(literal 3100000000000 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)))) |
(if (<=.f64 z #s(literal -49999999999999999139130636277292928373873822357007948776987560108905577054208 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 602134035108409/316912650057057350374175801344 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (<=.f64 y #s(literal -112000000000000006730677609299968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) (if (<=.f64 y #s(literal 240000000000000007587059728384 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)))) |
(if (<=.f64 z #s(literal -14200000000000000534933803318802953056676650643203233200448307028545796874754647336229092226547834610377555968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal 89999999999999997982768194178559740352103395851612145638952116468130608389561440778297123843329390254119226179584 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))) |
(if (<=.f64 y #s(literal -112000000000000006730677609299968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 y #s(literal -3997101449988281/38067632857031246407630399952637454339360261162480498151827759598488080823306351962756308851101602575098847329028940110091637382285949586119445262876221302420044053515454972772932772091758022063878123412028196792475334366896073730256821732872925646925108354699626084168288392929655914496 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 y #s(literal 4434405849165311/943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 y #s(literal 17199999999999999100815205027642397597630464 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))))) |
(if (<=.f64 x #s(literal -21000000000 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 x #s(literal 40999999999999999722058895648826747034930046119706624 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| Outputs |
|---|
(if (<=.f64 (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(literal +inf.0 binary64)) (+.f64 (+.f64 (+.f64 x (*.f64 y z)) (*.f64 t a)) (*.f64 (*.f64 a z) b)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z))) |
(if (<=.f64 a #s(literal -3139847368775185/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) (if (<=.f64 a #s(literal 1969113048739589/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)))) |
(if (or (<=.f64 a #s(literal -3139847368775185/1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088 binary64)) (not (<=.f64 a #s(literal 1969113048739589/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 (fma.f64 b z t) a x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x))) |
(if (<=.f64 a #s(literal -6156563468186637/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) (if (<=.f64 a #s(literal 3100000000000 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)))) |
(if (or (<=.f64 a #s(literal -6156563468186637/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544 binary64)) (not (<=.f64 a #s(literal 3100000000000 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b z t) a)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x))) |
(if (<=.f64 z #s(literal -49999999999999999139130636277292928373873822357007948776987560108905577054208 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) (if (<=.f64 z #s(literal 602134035108409/316912650057057350374175801344 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)))) |
(if (or (<=.f64 z #s(literal -49999999999999999139130636277292928373873822357007948776987560108905577054208 binary64)) (not (<=.f64 z #s(literal 602134035108409/316912650057057350374175801344 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 (fma.f64 b a y) z)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 y #s(literal -112000000000000006730677609299968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) (if (<=.f64 y #s(literal 240000000000000007587059728384 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)))) |
(if (or (<=.f64 y #s(literal -112000000000000006730677609299968 binary64)) (not (<=.f64 y #s(literal 240000000000000007587059728384 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 z y x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 z #s(literal -14200000000000000534933803318802953056676650643203233200448307028545796874754647336229092226547834610377555968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 z #s(literal 89999999999999997982768194178559740352103395851612145638952116468130608389561440778297123843329390254119226179584 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))) |
(if (or (<=.f64 z #s(literal -14200000000000000534933803318802953056676650643203233200448307028545796874754647336229092226547834610377555968 binary64)) (not (<=.f64 z #s(literal 89999999999999997982768194178559740352103395851612145638952116468130608389561440778297123843329390254119226179584 binary64)))) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (fma.f64 a t x))) |
(if (<=.f64 y #s(literal -112000000000000006730677609299968 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)) (if (<=.f64 y #s(literal -3997101449988281/38067632857031246407630399952637454339360261162480498151827759598488080823306351962756308851101602575098847329028940110091637382285949586119445262876221302420044053515454972772932772091758022063878123412028196792475334366896073730256821732872925646925108354699626084168288392929655914496 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) (if (<=.f64 y #s(literal 4434405849165311/943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 y #s(literal 17199999999999999100815205027642397597630464 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 z y)))))) |
(if (<=.f64 x #s(literal -21000000000 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) (if (<=.f64 x #s(literal 40999999999999999722058895648826747034930046119706624 binary64)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) (*.f64 a t)) #s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x))) |
#s(approx (+ (+ (+ x (* y z)) (* t a)) (* (* a z) b)) x) |
| 1× | done |
Compiled 493 to 91 computations (81.5% saved)
Compiled 1 016 to 208 computations (79.5% saved)
Loading profile data...