
Time bar (total: 4.5s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.9% | 0.1% | 0% | 0% | 0% | 0 |
| 100% | 99.9% | 0% | 0.1% | 0% | 0% | 0% | 1 |
Compiled 11 to 10 computations (9.1% saved)
| 1.1s | 8 254× | 0 | valid |
| 0.0ms | 2× | 1 | valid |
ival-sin: 317.0ms (44.8% of total)ival-cos: 218.0ms (30.8% of total)ival-add!: 94.0ms (13.3% of total)ival-mult!: 77.0ms (10.9% of total)adjust: 2.0ms (0.3% of total)Useful iterations: 1 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 36 | 97 |
| 1 | 141 | 90 |
| 2 | 528 | 90 |
| 3 | 1537 | 90 |
| 1× | node-limit |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 99.9% | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
Compiled 16 to 16 computations (0% saved)
| Inputs |
|---|
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
(+.f64 x (sin.f64 y)) |
x |
(sin.f64 y) |
y |
(*.f64 z (cos.f64 y)) |
z |
(cos.f64 y) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (sin y))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (sin y)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x y))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (sin y) #s(hole binary64 y)) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (* z (cos y)) #s(hole binary64 z)) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 26.0ms | x | @ | -inf | ((+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) x (sin y) y (* z (cos y)) z (cos y)) |
| 1.0ms | z | @ | 0 | ((+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) x (sin y) y (* z (cos y)) z (cos y)) |
| 1.0ms | y | @ | 0 | ((+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) x (sin y) y (* z (cos y)) z (cos y)) |
| 1.0ms | z | @ | -inf | ((+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) x (sin y) y (* z (cos y)) z (cos y)) |
| 1.0ms | x | @ | 0 | ((+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) x (sin y) y (* z (cos y)) z (cos y)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 147 | 531 |
| 0 | 155 | 513 |
| 1 | 1008 | 509 |
| 2 | 4501 | 491 |
| 0 | 8994 | 444 |
| 1 | 17589 | 444 |
| 1× | saturated |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
(+.f64 x (sin.f64 y)) |
x |
(sin.f64 y) |
y |
(*.f64 z (cos.f64 y)) |
z |
(cos.f64 y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (sin y))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (sin y)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x y))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ x (sin y)) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (sin y) #s(hole binary64 y)) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (* z (cos y)) #s(hole binary64 z)) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
| Outputs |
|---|
(neg.f64 (-.f64 (*.f64 (neg.f64 z) (cos.f64 y)) (+.f64 (sin.f64 y) x))) |
(neg.f64 (-.f64 (neg.f64 (fma.f64 (cos.f64 y) z (sin.f64 y))) x)) |
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
(fma.f64 z (cos.f64 y) (+.f64 (sin.f64 y) x)) |
(-.f64 (fma.f64 (cos.f64 y) z x) (neg.f64 (sin.f64 y))) |
(-.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) (neg.f64 x)) |
(-.f64 (*.f64 (cos.f64 y) z) (-.f64 (neg.f64 x) (sin.f64 y))) |
(-.f64 (+.f64 (sin.f64 y) x) (*.f64 (neg.f64 z) (cos.f64 y))) |
(-.f64 (sin.f64 y) (-.f64 (*.f64 (neg.f64 z) (cos.f64 y)) x)) |
(-.f64 x (neg.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)))) |
(+.f64 (+.f64 x (*.f64 (cos.f64 y) z)) (sin.f64 y)) |
(+.f64 (fma.f64 (cos.f64 y) z x) (sin.f64 y)) |
(+.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) |
(+.f64 (*.f64 (cos.f64 y) z) (+.f64 (sin.f64 y) x)) |
(+.f64 (+.f64 (sin.f64 y) x) (*.f64 (neg.f64 (neg.f64 z)) (cos.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) x) (neg.f64 (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 (+.f64 (sin.f64 y) x) (*.f64 (cos.f64 y) z)) |
(+.f64 (sin.f64 y) (+.f64 x (*.f64 (cos.f64 y) z))) |
(+.f64 (sin.f64 y) (fma.f64 (cos.f64 y) z x)) |
(+.f64 (sin.f64 y) (-.f64 x (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 x (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(neg.f64 (-.f64 (neg.f64 x) (sin.f64 y))) |
(-.f64 (sin.f64 y) (neg.f64 x)) |
(-.f64 x (neg.f64 (sin.f64 y))) |
(+.f64 (sin.f64 y) x) |
(+.f64 x (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 x (sin.f64 y)) |
x |
(neg.f64 (sin.f64 (*.f64 #s(literal -1 binary64) y))) |
(neg.f64 (sin.f64 (*.f64 y #s(literal -1 binary64)))) |
(sin.f64 y) |
y |
(*.f64 (cos.f64 y) z) |
(*.f64 z (cos.f64 y)) |
z |
(sin.f64 (+.f64 (neg.f64 (neg.f64 y)) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (neg.f64 (fabs.f64 y)) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (neg.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (fabs.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) |
(fma.f64 (sin.f64 (fabs.f64 y)) #s(literal 0 binary64) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
(fma.f64 (neg.f64 (sin.f64 y)) #s(literal 0 binary64) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
(fma.f64 #s(literal 1 binary64) (cos.f64 y) (*.f64 #s(literal 0 binary64) (sin.f64 y))) |
(fma.f64 (sin.f64 y) #s(literal 0 binary64) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
(-.f64 (*.f64 (sin.f64 y) #s(literal 0 binary64)) (*.f64 (cos.f64 y) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) |
(cos.f64 (neg.f64 (neg.f64 (neg.f64 y)))) |
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 y)))) |
(cos.f64 (*.f64 #s(literal -1 binary64) y)) |
(cos.f64 (*.f64 y #s(literal -1 binary64))) |
(cos.f64 (neg.f64 (neg.f64 y))) |
(cos.f64 (neg.f64 (fabs.f64 y))) |
(cos.f64 (neg.f64 y)) |
(cos.f64 (fabs.f64 y)) |
(cos.f64 y) |
(+.f64 (*.f64 (sin.f64 (fabs.f64 y)) #s(literal 0 binary64)) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
(+.f64 (*.f64 (neg.f64 (sin.f64 y)) #s(literal 0 binary64)) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 y)) (*.f64 #s(literal 0 binary64) (sin.f64 y))) |
(+.f64 (*.f64 (sin.f64 y) #s(literal 0 binary64)) (*.f64 (cos.f64 y) #s(literal 1 binary64))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x))) |
#s(approx (+ x (sin y)) (sin.f64 y)) |
#s(approx (+ x (sin y)) (+.f64 (sin.f64 y) x)) |
#s(approx x x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) #s(literal 1 binary64) x)) |
#s(approx (+ x (sin y)) (fma.f64 (sin.f64 y) #s(literal 1 binary64) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) #s(literal 1 binary64) x)) |
#s(approx (+ x (sin y)) (fma.f64 (sin.f64 y) #s(literal 1 binary64) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ x (sin y)) (+.f64 y x)) |
#s(approx (+ x (sin y)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x)) |
#s(approx (+ x (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y x)) |
#s(approx (sin y) y) |
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y #s(literal 1 binary64)) y)) |
#s(approx (* z (cos y)) z) |
#s(approx (* z (cos y)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (* z (cos y)) (fma.f64 (*.f64 z (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 y y) z)) |
#s(approx (* z (cos y)) (fma.f64 (*.f64 (fma.f64 (*.f64 z (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64))) (*.f64 y y) (*.f64 #s(literal -1/2 binary64) z)) y) y z)) |
#s(approx (cos y) #s(literal 1 binary64)) |
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) y) y #s(literal 1 binary64))) |
#s(approx (* z (cos y)) (*.f64 (cos.f64 y) z)) |
#s(approx (cos y) (cos.f64 y)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (+.f64 (sin.f64 y) x) #s(literal 1 binary64) (*.f64 (cos.f64 y) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (+.f64 (sin.f64 y) x) #s(literal 1 binary64) (*.f64 (cos.f64 y) z))) |
Compiled 520 to 273 computations (47.5% saved)
8 alts after pruning (8 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 72 | 8 | 80 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 73 | 8 | 81 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 99.9% | (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
| ▶ | 80.8% | (+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
| 73.1% | (+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) | |
| ▶ | 57.4% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
| ▶ | 55.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
| 54.1% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) | |
| 63.0% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) | |
| ▶ | 64.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
Compiled 180 to 180 computations (0% saved)
| Inputs |
|---|
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
(cos.f64 y) |
y |
z |
(+.f64 (sin.f64 y) x) |
(sin.f64 y) |
x |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
(+.f64 z x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x)) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 z y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(+.f64 x (sin.f64 y)) |
#s(approx (* z (cos y)) z) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (sin y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (sin y)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (* y z))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1/2 (* y z)))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* y (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* y (- (* 1/2 z) (/ 1 y)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* z (+ (* -1/2 y) (/ 1 z))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* z (- (* 1/2 y) (/ 1 z)))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 4.0ms | z | @ | 0 | ((+ (* (cos y) z) (+ (sin y) x)) (cos y) y z (+ (sin y) x) (sin y) x (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) (* z (cos y)) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y))) |
| 2.0ms | y | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (cos y) y z (+ (sin y) x) (sin y) x (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) (* z (cos y)) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y))) |
| 2.0ms | z | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (cos y) y z (+ (sin y) x) (sin y) x (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) (* z (cos y)) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y))) |
| 2.0ms | z | @ | inf | ((+ (* (cos y) z) (+ (sin y) x)) (cos y) y z (+ (sin y) x) (sin y) x (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) (* z (cos y)) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y))) |
| 1.0ms | y | @ | inf | ((+ (* (cos y) z) (+ (sin y) x)) (cos y) y z (+ (sin y) x) (sin y) x (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ x (sin y)) (* z (cos y)) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 269 | 1163 |
| 0 | 290 | 1072 |
| 1 | 1834 | 1061 |
| 2 | 7936 | 1061 |
| 0 | 8004 | 1007 |
| 1 | 16751 | 1007 |
| 1× | saturated |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
(cos.f64 y) |
y |
z |
(+.f64 (sin.f64 y) x) |
(sin.f64 y) |
x |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
(+.f64 z x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x)) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 z y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(+.f64 x (sin.f64 y)) |
#s(approx (* z (cos y)) z) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (sin y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (sin y)))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx y #s(hole binary64 y)) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (* y z))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1/2 (* y z)))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* y (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* y (- (* 1/2 z) (/ 1 y)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* z (+ (* -1/2 y) (/ 1 z))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* z (- (* 1/2 y) (/ 1 z)))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
| Outputs |
|---|
(neg.f64 (-.f64 (-.f64 (neg.f64 (sin.f64 y)) x) (*.f64 (cos.f64 y) z))) |
(neg.f64 (-.f64 (*.f64 (neg.f64 z) (cos.f64 y)) (+.f64 (sin.f64 y) x))) |
(neg.f64 (-.f64 (neg.f64 (fma.f64 (cos.f64 y) z (sin.f64 y))) x)) |
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
(fma.f64 z (cos.f64 y) (+.f64 (sin.f64 y) x)) |
(-.f64 (fma.f64 (cos.f64 y) z x) (neg.f64 (sin.f64 y))) |
(-.f64 (+.f64 x (*.f64 (cos.f64 y) z)) (neg.f64 (sin.f64 y))) |
(-.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) (neg.f64 x)) |
(-.f64 (*.f64 (cos.f64 y) z) (-.f64 (neg.f64 (sin.f64 y)) x)) |
(-.f64 (+.f64 (sin.f64 y) x) (*.f64 (neg.f64 z) (cos.f64 y))) |
(-.f64 (sin.f64 y) (-.f64 (*.f64 (neg.f64 z) (cos.f64 y)) x)) |
(-.f64 (sin.f64 y) (-.f64 (neg.f64 x) (*.f64 (cos.f64 y) z))) |
(-.f64 (sin.f64 y) (+.f64 (neg.f64 x) (*.f64 (neg.f64 z) (cos.f64 y)))) |
(-.f64 x (neg.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)))) |
(+.f64 (fma.f64 (cos.f64 y) z x) (sin.f64 y)) |
(+.f64 (+.f64 x (*.f64 (cos.f64 y) z)) (sin.f64 y)) |
(+.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) |
(+.f64 (*.f64 (cos.f64 y) z) (+.f64 (sin.f64 y) x)) |
(+.f64 (+.f64 (sin.f64 y) x) (neg.f64 (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 (+.f64 (sin.f64 y) x) (*.f64 (cos.f64 y) z)) |
(+.f64 (sin.f64 y) (fma.f64 (cos.f64 y) z x)) |
(+.f64 (sin.f64 y) (+.f64 x (*.f64 (cos.f64 y) z))) |
(+.f64 (sin.f64 y) (-.f64 x (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 x (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(sin.f64 (+.f64 (neg.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (fabs.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) |
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
(-.f64 (*.f64 (sin.f64 y) (cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 (cos.f64 y) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) |
(cos.f64 (neg.f64 (fabs.f64 y))) |
(cos.f64 (fabs.f64 (fabs.f64 y))) |
(cos.f64 (neg.f64 y)) |
(cos.f64 (fabs.f64 y)) |
(cos.f64 y) |
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
y |
z |
(neg.f64 (-.f64 (neg.f64 (sin.f64 y)) x)) |
(-.f64 (sin.f64 y) (neg.f64 x)) |
(-.f64 x (neg.f64 (sin.f64 y))) |
(+.f64 (sin.f64 y) x) |
(+.f64 x (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 x (sin.f64 y)) |
(sin.f64 y) |
x |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 x z)) |
(*.f64 (*.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (/.f64 x z))) z) |
(*.f64 (-.f64 (neg.f64 x) z) #s(literal -1 binary64)) |
(*.f64 (neg.f64 z) (-.f64 #s(literal -1 binary64) (/.f64 x z))) |
(*.f64 (-.f64 #s(literal -1 binary64) (/.f64 x z)) (neg.f64 z)) |
(*.f64 (-.f64 (/.f64 x z) #s(literal -1 binary64)) z) |
(*.f64 #s(literal -1 binary64) (-.f64 (neg.f64 x) z)) |
(*.f64 z (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 x z)) #s(literal -1 binary64))) |
(*.f64 z (-.f64 (/.f64 x z) #s(literal -1 binary64))) |
(neg.f64 (*.f64 #s(literal 1 binary64) (-.f64 (neg.f64 x) z))) |
(neg.f64 (*.f64 (neg.f64 z) (-.f64 (/.f64 x z) #s(literal -1 binary64)))) |
(neg.f64 (*.f64 (-.f64 (neg.f64 x) z) #s(literal 1 binary64))) |
(neg.f64 (-.f64 (neg.f64 x) z)) |
(fma.f64 (neg.f64 z) (/.f64 (neg.f64 x) z) (*.f64 (neg.f64 z) #s(literal -1 binary64))) |
(fma.f64 (/.f64 (neg.f64 x) z) (neg.f64 z) (*.f64 #s(literal -1 binary64) (neg.f64 z))) |
(-.f64 x (neg.f64 z)) |
(-.f64 z (*.f64 (neg.f64 z) (/.f64 x z))) |
(-.f64 z (*.f64 (/.f64 (neg.f64 x) z) z)) |
(-.f64 z (neg.f64 x)) |
(+.f64 (*.f64 (neg.f64 z) (/.f64 (neg.f64 x) z)) (*.f64 (neg.f64 z) #s(literal -1 binary64))) |
(+.f64 (*.f64 (/.f64 (neg.f64 x) z) (neg.f64 z)) (*.f64 #s(literal -1 binary64) (neg.f64 z))) |
(+.f64 x z) |
(+.f64 z x) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 x z))) |
(neg.f64 (-.f64 (-.f64 (neg.f64 x) z) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
(neg.f64 (-.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) y) x)) |
(fma.f64 (*.f64 #s(literal -1 binary64) (-.f64 #s(literal -1 binary64) (/.f64 x z))) z (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (*.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64))) z (+.f64 x y)) |
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) #s(literal -1 binary64) (+.f64 x y)) |
(fma.f64 (-.f64 (neg.f64 x) z) #s(literal -1 binary64) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (neg.f64 z) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (+.f64 x y)) |
(fma.f64 (neg.f64 z) (-.f64 #s(literal -1 binary64) (/.f64 x z)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (neg.f64 z) (+.f64 x y)) |
(fma.f64 (-.f64 #s(literal -1 binary64) (/.f64 x z)) (neg.f64 z) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (-.f64 (/.f64 x z) #s(literal -1 binary64)) z (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) (*.f64 y y) (+.f64 x z)) |
(fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y)) |
(fma.f64 (*.f64 y y) (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) (+.f64 x z)) |
(fma.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) (+.f64 x y)) |
(fma.f64 #s(literal -1 binary64) (-.f64 (neg.f64 x) z) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 x z)) |
(fma.f64 z (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 x z)) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 z (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) #s(literal -1 binary64)) (+.f64 x y)) |
(fma.f64 z (-.f64 (/.f64 x z) #s(literal -1 binary64)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(fma.f64 z (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) (+.f64 x y)) |
(fma.f64 y (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) (+.f64 x z)) |
(-.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y x) (neg.f64 z)) |
(-.f64 (+.f64 x y) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z)) |
(-.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) (neg.f64 x)) |
(-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y) (-.f64 (neg.f64 x) z)) |
(-.f64 (+.f64 x z) (*.f64 (neg.f64 y) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) |
(-.f64 x (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) y)) |
(-.f64 z (-.f64 (*.f64 (neg.f64 y) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x)) |
(-.f64 z (-.f64 (neg.f64 x) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
(-.f64 y (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) x)) |
(+.f64 (+.f64 x (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) y) |
(+.f64 (+.f64 x (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) z) |
(+.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y x) z) |
(+.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) (+.f64 x y)) |
(+.f64 (+.f64 x y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
(+.f64 (+.f64 (+.f64 z y) x) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
(+.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x) |
(+.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y) (+.f64 x z)) |
(+.f64 (+.f64 x z) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(+.f64 x (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z)) |
(+.f64 z (+.f64 x (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
(+.f64 z (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y x)) |
(+.f64 y (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z x)) |
(+.f64 y (+.f64 x (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
(+.f64 y (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) (+.f64 x z))) |
(+.f64 y (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)) (-.f64 (neg.f64 x) z))) |
(*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal -1 binary64) z))) z) |
(*.f64 (*.f64 #s(literal -1 binary64) (fma.f64 #s(literal 1/2 binary64) z (/.f64 #s(literal -1 binary64) y))) y) |
(*.f64 (neg.f64 z) (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal -1 binary64) z))) |
(*.f64 (neg.f64 y) (fma.f64 #s(literal 1/2 binary64) z (/.f64 #s(literal -1 binary64) y))) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal -1 binary64) z)) (neg.f64 z)) |
(*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) z)) z) |
(*.f64 (neg.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal -1 binary64)) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) z (/.f64 #s(literal -1 binary64) y)) (neg.f64 y)) |
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) y) |
(*.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) |
(*.f64 z (*.f64 (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal -1 binary64) z)) #s(literal -1 binary64))) |
(*.f64 z (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) z))) |
(*.f64 y (*.f64 (fma.f64 #s(literal 1/2 binary64) z (/.f64 #s(literal -1 binary64) y)) #s(literal -1 binary64))) |
(*.f64 y (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y))) |
(neg.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))))) |
(neg.f64 (*.f64 (neg.f64 z) (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) z)))) |
(neg.f64 (*.f64 (neg.f64 y) (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)))) |
(neg.f64 (*.f64 (neg.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 1 binary64))) |
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) z) #s(literal 1 binary64))) |
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) z))) |
(neg.f64 (neg.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) |
(fma.f64 (neg.f64 z) (*.f64 #s(literal 1/2 binary64) y) (*.f64 (neg.f64 z) (/.f64 #s(literal -1 binary64) z))) |
(fma.f64 (neg.f64 y) (*.f64 #s(literal 1/2 binary64) z) (*.f64 (neg.f64 y) (/.f64 #s(literal -1 binary64) y))) |
(fma.f64 (*.f64 #s(literal 1/2 binary64) y) (neg.f64 z) (*.f64 (/.f64 #s(literal -1 binary64) z) (neg.f64 z))) |
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) |
(fma.f64 (*.f64 #s(literal 1/2 binary64) z) (neg.f64 y) (*.f64 (/.f64 #s(literal -1 binary64) y) (neg.f64 y))) |
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y #s(literal 1 binary64)) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 z y) #s(literal 1 binary64)) |
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) #s(literal 1 binary64)) |
(fma.f64 y (*.f64 #s(literal -1/2 binary64) z) #s(literal 1 binary64)) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (neg.f64 z) (/.f64 #s(literal 1 binary64) z))) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) z) z)) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (neg.f64 y) (/.f64 #s(literal 1 binary64) y))) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (/.f64 #s(literal -1 binary64) y) y)) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) #s(literal -1 binary64)) |
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal 1/2 binary64) y) z)) |
(+.f64 (*.f64 (neg.f64 z) (*.f64 #s(literal 1/2 binary64) y)) (*.f64 (neg.f64 z) (/.f64 #s(literal -1 binary64) z))) |
(+.f64 (*.f64 (neg.f64 y) (*.f64 #s(literal 1/2 binary64) z)) (*.f64 (neg.f64 y) (/.f64 #s(literal -1 binary64) y))) |
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) y) (neg.f64 z)) (*.f64 (/.f64 #s(literal -1 binary64) z) (neg.f64 z))) |
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) z) (neg.f64 y)) (*.f64 (/.f64 #s(literal -1 binary64) y) (neg.f64 y))) |
(+.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) #s(literal 1 binary64)) |
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
(*.f64 z y) |
(*.f64 y z) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
(neg.f64 (-.f64 (neg.f64 #s(approx (* z (cos y)) z)) (+.f64 (sin.f64 y) x))) |
(-.f64 (+.f64 #s(approx (* z (cos y)) z) x) (neg.f64 (sin.f64 y))) |
(-.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) (neg.f64 x)) |
(-.f64 #s(approx (* z (cos y)) z) (-.f64 (neg.f64 (sin.f64 y)) x)) |
(-.f64 (+.f64 (sin.f64 y) x) (neg.f64 #s(approx (* z (cos y)) z))) |
(-.f64 (sin.f64 y) (-.f64 (neg.f64 x) #s(approx (* z (cos y)) z))) |
(-.f64 (sin.f64 y) (+.f64 (neg.f64 x) (neg.f64 #s(approx (* z (cos y)) z)))) |
(-.f64 x (-.f64 (neg.f64 (sin.f64 y)) #s(approx (* z (cos y)) z))) |
(-.f64 x (+.f64 (neg.f64 (sin.f64 y)) (neg.f64 #s(approx (* z (cos y)) z)))) |
(-.f64 x (neg.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)))) |
(+.f64 (+.f64 #s(approx (* z (cos y)) z) x) (sin.f64 y)) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 #s(approx (* z (cos y)) z) (+.f64 (sin.f64 y) x)) |
(+.f64 (+.f64 (sin.f64 y) x) (neg.f64 (neg.f64 #s(approx (* z (cos y)) z)))) |
(+.f64 (+.f64 (sin.f64 y) x) #s(approx (* z (cos y)) z)) |
(+.f64 (sin.f64 y) (+.f64 x #s(approx (* z (cos y)) z))) |
(+.f64 (sin.f64 y) (-.f64 x (neg.f64 #s(approx (* z (cos y)) z)))) |
(+.f64 x (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z))) |
(neg.f64 (-.f64 (neg.f64 (sin.f64 y)) x)) |
(-.f64 (sin.f64 y) (neg.f64 x)) |
(-.f64 x (neg.f64 (sin.f64 y))) |
(+.f64 (sin.f64 y) x) |
(+.f64 x (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 x (sin.f64 y)) |
#s(approx (* z (cos y)) z) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(neg.f64 (neg.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)))) |
(fma.f64 (cos.f64 y) z (neg.f64 (neg.f64 (sin.f64 y)))) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
(fma.f64 z (cos.f64 y) (neg.f64 (neg.f64 (sin.f64 y)))) |
(fma.f64 z (cos.f64 y) (sin.f64 y)) |
(-.f64 (*.f64 (cos.f64 y) z) (neg.f64 (sin.f64 y))) |
(-.f64 (sin.f64 y) (*.f64 (neg.f64 z) (cos.f64 y))) |
(+.f64 (*.f64 (cos.f64 y) z) (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 (*.f64 (cos.f64 y) z) (sin.f64 y)) |
(+.f64 (sin.f64 y) (neg.f64 (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 (sin.f64 y) (*.f64 (cos.f64 y) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x))) |
#s(approx (+ (sin y) x) (sin.f64 y)) |
#s(approx (+ (sin y) x) (+.f64 (sin.f64 y) x)) |
#s(approx x x) |
#s(approx (+ z x) z) |
#s(approx (+ z x) (+.f64 x z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 x z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
#s(approx (+ (sin y) x) (fma.f64 (/.f64 (sin.f64 y) x) x x)) |
#s(approx (+ z x) (fma.f64 (/.f64 z x) x x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x) x x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
#s(approx (+ (sin y) x) (fma.f64 (/.f64 (sin.f64 y) x) x x)) |
#s(approx (+ z x) (fma.f64 (/.f64 z x) x x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x) x x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (cos y) #s(literal 1 binary64)) |
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) y) y #s(literal 1 binary64))) |
#s(approx y y) |
#s(approx (+ (sin y) x) (+.f64 x y)) |
#s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x)) |
#s(approx (+ (sin y) x) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y x)) |
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y #s(literal 1 binary64)) y)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (* z y) (*.f64 z y)) |
#s(approx (* z (cos y)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (* z (cos y)) (fma.f64 (*.f64 z (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 y y) z)) |
#s(approx (* z (cos y)) (fma.f64 (*.f64 (fma.f64 (*.f64 (*.f64 z (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64))) y) y (*.f64 #s(literal -1/2 binary64) z)) y) y z)) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
#s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z)) |
#s(approx (cos y) (cos.f64 y)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (-.f64 (/.f64 (+.f64 x z) y) #s(literal -1 binary64)) y)) y) y)) |
#s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (* z (cos y)) (*.f64 (cos.f64 y) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (-.f64 (/.f64 (+.f64 x z) y) #s(literal -1 binary64)) y)) y) y)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 x z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (fma.f64 (sin.f64 y) #s(literal 1 binary64) x))) |
#s(approx (+ z x) (+.f64 x z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) z z)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (sin.f64 y) #s(literal 1 binary64) (*.f64 (cos.f64 y) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (fma.f64 (sin.f64 y) #s(literal 1 binary64) x))) |
#s(approx (+ z x) (+.f64 x z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) z z)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (sin.f64 y) #s(literal 1 binary64) (*.f64 (cos.f64 y) z))) |
Compiled 1 811 to 771 computations (57.4% saved)
20 alts after pruning (17 fresh and 3 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 259 | 15 | 274 |
| Fresh | 1 | 2 | 3 |
| Picked | 2 | 3 | 5 |
| Done | 0 | 0 | 0 |
| Total | 262 | 20 | 282 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
| 73.1% | (fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) | |
| ▶ | 80.8% | (+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
| 55.1% | (+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) | |
| 73.1% | (+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) | |
| 26.6% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) | |
| ▶ | 57.1% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
| 55.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) z (sin.f64 y))) | |
| ✓ | 55.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
| 51.2% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) | |
| 37.6% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) | |
| 63.0% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) | |
| ✓ | 64.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
| 8.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) | |
| ▶ | 20.1% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
| 2.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) | |
| 26.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) | |
| 27.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) | |
| ▶ | 21.9% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
| ▶ | 92.9% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
Compiled 567 to 551 computations (2.8% saved)
| Inputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
(fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x) |
x |
(/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
(cos.f64 y) |
y |
z |
(sin.f64 y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ z x) z) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) |
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 y y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
(fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y)) |
(+.f64 x y) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) |
#s(approx (* z (cos y)) z) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (+ (sin y) (* z (cos y))) x))) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (+ y (* z (+ 1 (* -1/2 (pow y 2))))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (+ x y) #s(hole binary64 y)) |
#s(approx (+ x y) #s(hole binary64 (+ x y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* x (+ 1 (+ (/ y x) (/ (* z (+ 1 (* -1/2 (pow y 2)))) x)))))) |
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ y (* z (+ 1 (* -1/2 (pow y 2))))) x)) 1))))) |
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ z x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ y x) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* -1/2 (/ (* y z) x)) (/ 1 x))) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* y (+ (* -1/2 (/ z x)) (* -1/6 (/ y x)))) (/ 1 x))) (/ z x)))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* y y) #s(hole binary64 (pow y 2))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (sin y) #s(hole binary64 (sin y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ z (pow y 2)))))) |
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* -1/2 (pow y 2)))) |
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* (pow y 2) (- (/ 1 (pow y 2)) 1/2)))) |
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (sin y)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (sin y) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ (sin y) x) (/ (* z (cos y)) x)))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (* z (cos y)) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* z (+ (/ (cos y) x) (/ (sin y) (* x z)))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (cos y) x)) (* -1 (/ (sin y) (* x z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* -1 (* z (+ (* -1 (+ 1 (* -1/2 (pow y 2)))) (* -1 (/ (+ x y) z))))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 5.0ms | y | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (+ (* (cos y) z) (sin y)) (cos y) y z (sin y) (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* y y) -1/2) 1) z) (+ (* (* y y) -1/2) 1) (* y y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (+ x y) (+ (+ (sin y) (* z (cos y))) x) (+ (sin y) (* z (cos y))) (* z (cos y))) |
| 5.0ms | z | @ | inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (+ (* (cos y) z) (sin y)) (cos y) y z (sin y) (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* y y) -1/2) 1) z) (+ (* (* y y) -1/2) 1) (* y y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (+ x y) (+ (+ (sin y) (* z (cos y))) x) (+ (sin y) (* z (cos y))) (* z (cos y))) |
| 3.0ms | z | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (+ (* (cos y) z) (sin y)) (cos y) y z (sin y) (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* y y) -1/2) 1) z) (+ (* (* y y) -1/2) 1) (* y y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (+ x y) (+ (+ (sin y) (* z (cos y))) x) (+ (sin y) (* z (cos y))) (* z (cos y))) |
| 2.0ms | x | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (+ (* (cos y) z) (sin y)) (cos y) y z (sin y) (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* y y) -1/2) 1) z) (+ (* (* y y) -1/2) 1) (* y y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (+ x y) (+ (+ (sin y) (* z (cos y))) x) (+ (sin y) (* z (cos y))) (* z (cos y))) |
| 2.0ms | x | @ | 0 | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (+ (* (cos y) z) (sin y)) (cos y) y z (sin y) (+ (+ x (sin y)) (* z (cos y))) (+ z x) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* y y) -1/2) 1) z) (+ (* (* y y) -1/2) 1) (* y y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (+ x y) (+ (+ (sin y) (* z (cos y))) x) (+ (sin y) (* z (cos y))) (* z (cos y))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 324 | 1548 |
| 0 | 345 | 1440 |
| 1 | 2268 | 1421 |
| 0 | 8409 | 1353 |
| 1 | 17485 | 1353 |
| 1× | saturated |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
(fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x) |
x |
(/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
(cos.f64 y) |
y |
z |
(sin.f64 y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ z x) z) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) |
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 y y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
(fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y)) |
(+.f64 x y) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) |
#s(approx (* z (cos y)) z) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (+ (sin y) (* z (cos y))) x))) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (+ y (* z (+ 1 (* -1/2 (pow y 2))))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (+ x y) #s(hole binary64 y)) |
#s(approx (+ x y) #s(hole binary64 (+ x y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* x (+ 1 (+ (/ y x) (/ (* z (+ 1 (* -1/2 (pow y 2)))) x)))))) |
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ y (* z (+ 1 (* -1/2 (pow y 2))))) x)) 1))))) |
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ z x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ y x) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* -1/2 (/ (* y z) x)) (/ 1 x))) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* y (+ (* -1/2 (/ z x)) (* -1/6 (/ y x)))) (/ 1 x))) (/ z x)))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (+ z (* -1/2 (* (pow y 2) z))))) |
#s(approx (* y y) #s(hole binary64 (pow y 2))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* 1/24 (* (pow y 2) z))))))) |
#s(approx (* z (cos y)) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/2 z) (* (pow y 2) (+ (* -1/720 (* (pow y 2) z)) (* 1/24 z)))))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (sin y) #s(hole binary64 (sin y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ z (pow y 2)))))) |
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* -1/2 (pow y 2)))) |
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* (pow y 2) (- (/ 1 (pow y 2)) 1/2)))) |
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y))))) |
#s(approx (* z (cos y)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (sin y)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (sin y) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ (sin y) x) (/ (* z (cos y)) x)))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (* z (cos y)) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* z (+ (/ (cos y) x) (/ (sin y) (* x z)))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (cos y) x)) (* -1 (/ (sin y) (* x z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) #s(hole binary64 (* -1 (* z (+ (* -1 (+ 1 (* -1/2 (pow y 2)))) (* -1 (/ (+ x y) z))))))) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
(*.f64 (*.f64 #s(literal -1 binary64) x) (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x))) |
(*.f64 (neg.f64 x) (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x))) |
(*.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x) #s(literal -1 binary64)) |
(*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) (neg.f64 x)) |
(*.f64 #s(literal -1 binary64) (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x)) |
(*.f64 (-.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) #s(literal -1 binary64)) x) |
(*.f64 x (-.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) #s(literal -1 binary64))) |
(neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x))) |
(neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) x) (-.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) #s(literal -1 binary64)))) |
(neg.f64 (*.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x) #s(literal 1 binary64))) |
(neg.f64 (-.f64 (neg.f64 x) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x))) |
(neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x)) |
(fma.f64 (+.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) x)) x (*.f64 (/.f64 (*.f64 z (cos.f64 y)) x) x)) |
(fma.f64 (*.f64 x (fma.f64 z (cos.f64 y) (sin.f64 y))) (/.f64 #s(literal 1 binary64) x) (neg.f64 (neg.f64 x))) |
(fma.f64 (*.f64 x (fma.f64 z (cos.f64 y) (sin.f64 y))) (/.f64 #s(literal 1 binary64) x) (*.f64 x #s(literal 1 binary64))) |
(fma.f64 (*.f64 x (fma.f64 z (cos.f64 y) (sin.f64 y))) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) x)) |
(fma.f64 (*.f64 x (fma.f64 z (cos.f64 y) (sin.f64 y))) (/.f64 #s(literal 1 binary64) x) x) |
(fma.f64 (*.f64 #s(literal -1 binary64) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) (*.f64 (*.f64 #s(literal -1 binary64) x) #s(literal -1 binary64))) |
(fma.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) (*.f64 #s(literal -1 binary64) x) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) x))) |
(fma.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x (neg.f64 (neg.f64 x))) |
(fma.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x (*.f64 x #s(literal 1 binary64))) |
(fma.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x (*.f64 #s(literal 1 binary64) x)) |
(fma.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x x) |
(fma.f64 #s(literal 1 binary64) x (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
(fma.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) x)) (*.f64 x (/.f64 (*.f64 z (cos.f64 y)) x))) |
(fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) (neg.f64 (neg.f64 x))) |
(fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) (*.f64 x #s(literal 1 binary64))) |
(fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) (*.f64 #s(literal 1 binary64) x)) |
(fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) |
(fma.f64 x #s(literal 1 binary64) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
(-.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) x)) |
(-.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 (neg.f64 x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x))) |
(-.f64 (*.f64 x #s(literal 1 binary64)) (neg.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x))) |
(-.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) x)) |
(-.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x))) |
(-.f64 (*.f64 #s(literal 1 binary64) x) (neg.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x))) |
(-.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) (neg.f64 x)) |
(-.f64 x (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) x)) |
(-.f64 x (*.f64 (neg.f64 x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x))) |
(-.f64 x (neg.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x))) |
(+.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) x))) (*.f64 x (/.f64 (*.f64 z (cos.f64 y)) x))) |
(+.f64 (*.f64 (*.f64 #s(literal -1 binary64) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x))) (*.f64 (*.f64 #s(literal -1 binary64) x) #s(literal -1 binary64))) |
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) x)) x) (*.f64 (/.f64 (*.f64 z (cos.f64 y)) x) x)) |
(+.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x)) (*.f64 #s(literal -1 binary64) x)) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) x))) |
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
(+.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) (neg.f64 (neg.f64 x))) |
(+.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) (*.f64 x #s(literal 1 binary64))) |
(+.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) (*.f64 #s(literal 1 binary64) x)) |
(+.f64 (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x) x) |
(+.f64 x (*.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
x |
(*.f64 (fma.f64 (sin.f64 y) x (*.f64 x (*.f64 z (cos.f64 y)))) (/.f64 #s(literal 1 binary64) (*.f64 x x))) |
(*.f64 (neg.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (/.f64 #s(literal -1 binary64) x)) |
(*.f64 (/.f64 #s(literal 1 binary64) x) (fma.f64 z (cos.f64 y) (sin.f64 y))) |
(*.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (/.f64 #s(literal 1 binary64) x)) |
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (cos.f64 y)) (neg.f64 x) (*.f64 (neg.f64 x) (neg.f64 (sin.f64 y)))) (*.f64 x x)) |
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (cos.f64 y)) x (*.f64 (neg.f64 x) (sin.f64 y))) (*.f64 (neg.f64 x) x)) |
(/.f64 (fma.f64 (*.f64 z (cos.f64 y)) (neg.f64 x) (*.f64 x (neg.f64 (sin.f64 y)))) (*.f64 x (neg.f64 x))) |
(/.f64 (fma.f64 (*.f64 z (cos.f64 y)) x (*.f64 x (sin.f64 y))) (*.f64 x x)) |
(/.f64 (fma.f64 (neg.f64 (sin.f64 y)) (neg.f64 x) (*.f64 (neg.f64 x) (*.f64 (neg.f64 z) (cos.f64 y)))) (*.f64 x x)) |
(/.f64 (fma.f64 (neg.f64 (sin.f64 y)) x (*.f64 (neg.f64 x) (*.f64 z (cos.f64 y)))) (*.f64 (neg.f64 x) x)) |
(/.f64 (fma.f64 (sin.f64 y) (neg.f64 x) (*.f64 x (*.f64 (neg.f64 z) (cos.f64 y)))) (*.f64 x (neg.f64 x))) |
(/.f64 (neg.f64 (fma.f64 (sin.f64 y) x (*.f64 x (*.f64 z (cos.f64 y))))) (neg.f64 (*.f64 x x))) |
(/.f64 (fma.f64 (sin.f64 y) x (*.f64 x (*.f64 z (cos.f64 y)))) (*.f64 x x)) |
(/.f64 (neg.f64 (fma.f64 z (cos.f64 y) (sin.f64 y))) (neg.f64 x)) |
(/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 (neg.f64 x))) |
(/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) |
(neg.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) (neg.f64 x))) |
(fma.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal -1 binary64) x) (/.f64 (*.f64 z (cos.f64 y)) x)) |
(fma.f64 (*.f64 (neg.f64 z) (cos.f64 y)) (/.f64 #s(literal -1 binary64) x) (/.f64 (sin.f64 y) x)) |
(fma.f64 (*.f64 z (cos.f64 y)) (/.f64 #s(literal 1 binary64) x) (/.f64 (sin.f64 y) x)) |
(fma.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) x) (/.f64 (*.f64 z (cos.f64 y)) x)) |
(fma.f64 z (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) x)) |
(-.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (*.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) x))) |
(-.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (/.f64 (neg.f64 (sin.f64 y)) x)) |
(-.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (neg.f64 (/.f64 (sin.f64 y) x))) |
(-.f64 (/.f64 (sin.f64 y) x) (*.f64 (neg.f64 z) (/.f64 (cos.f64 y) x))) |
(+.f64 (/.f64 (*.f64 (sin.f64 y) x) (*.f64 x x)) (/.f64 (*.f64 x (*.f64 z (cos.f64 y))) (*.f64 x x))) |
(+.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (/.f64 (sin.f64 y) x)) |
(+.f64 (/.f64 (sin.f64 y) x) (/.f64 (*.f64 z (cos.f64 y)) x)) |
(neg.f64 (neg.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)))) |
(fma.f64 z (cos.f64 y) (neg.f64 (neg.f64 (sin.f64 y)))) |
(fma.f64 z (cos.f64 y) (sin.f64 y)) |
(fma.f64 (cos.f64 y) z (neg.f64 (neg.f64 (sin.f64 y)))) |
(fma.f64 (cos.f64 y) z (sin.f64 y)) |
(-.f64 (*.f64 z (cos.f64 y)) (neg.f64 (sin.f64 y))) |
(-.f64 (sin.f64 y) (*.f64 (neg.f64 z) (cos.f64 y))) |
(+.f64 (*.f64 z (cos.f64 y)) (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 (*.f64 z (cos.f64 y)) (sin.f64 y)) |
(+.f64 (sin.f64 y) (*.f64 (neg.f64 (neg.f64 z)) (cos.f64 y))) |
(+.f64 (sin.f64 y) (neg.f64 (*.f64 (neg.f64 z) (cos.f64 y)))) |
(+.f64 (sin.f64 y) (*.f64 z (cos.f64 y))) |
(sin.f64 (+.f64 (neg.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (fabs.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 y (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
(cos.f64 (neg.f64 (neg.f64 y))) |
(cos.f64 (neg.f64 (fabs.f64 y))) |
(cos.f64 (fabs.f64 (fabs.f64 y))) |
(cos.f64 (neg.f64 y)) |
(cos.f64 (fabs.f64 y)) |
(cos.f64 y) |
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
y |
z |
(sin.f64 y) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ z x) z)) |
#s(approx (+ z x) z) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
(*.f64 (*.f64 #s(literal -1 binary64) z) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64))) |
(*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) #s(literal -1 binary64)) |
(*.f64 (neg.f64 z) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64))) |
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (neg.f64 z)) |
(*.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z)) |
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) |
(*.f64 z (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
(neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z))) |
(neg.f64 (*.f64 (*.f64 #s(literal -1 binary64) z) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) |
(neg.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) #s(literal 1 binary64))) |
(neg.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) z) z)) |
(neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z)) |
(fma.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) (*.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64))) |
(fma.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64) (*.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 #s(literal -1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))))) |
(fma.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64) (*.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64)))) |
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) (*.f64 #s(literal -1 binary64) z) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z))) |
(fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) (*.f64 #s(literal 1 binary64) z)) |
(fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z) |
(fma.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 #s(literal -1 binary64) z))) |
(fma.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z) (*.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -1 binary64) z))) |
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) z (*.f64 #s(literal 1 binary64) z)) |
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) z z) |
(fma.f64 #s(literal 1 binary64) z (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 y y) z) (*.f64 #s(literal 1 binary64) z)) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 y y) z) z) |
(fma.f64 z (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 z #s(literal 1 binary64))) |
(fma.f64 z #s(literal 1 binary64) (*.f64 z (*.f64 (*.f64 y y) #s(literal -1/2 binary64)))) |
(-.f64 (*.f64 z #s(literal 1 binary64)) (*.f64 (neg.f64 z) (*.f64 (*.f64 y y) #s(literal -1/2 binary64)))) |
(-.f64 (*.f64 z #s(literal 1 binary64)) (neg.f64 (*.f64 z (*.f64 (*.f64 y y) #s(literal -1/2 binary64))))) |
(-.f64 (*.f64 #s(literal 1 binary64) z) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) z)) |
(-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)) (neg.f64 z)) |
(-.f64 z (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) z)) |
(+.f64 (*.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 #s(literal 1/2 binary64) (*.f64 y y))) (*.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64))) |
(+.f64 (*.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 #s(literal -1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))))) |
(+.f64 (*.f64 (*.f64 #s(literal -1 binary64) z) #s(literal -1 binary64)) (*.f64 (*.f64 #s(literal -1 binary64) z) (*.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64)))) |
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 y y)) (*.f64 #s(literal -1 binary64) z)) (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z))) |
(+.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z)) (*.f64 (*.f64 #s(literal -1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 #s(literal -1 binary64) z))) |
(+.f64 (*.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) z)) (*.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -1 binary64) z))) |
(+.f64 (*.f64 z (*.f64 (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 z #s(literal 1 binary64))) |
(+.f64 (*.f64 z #s(literal 1 binary64)) (*.f64 z (*.f64 (*.f64 y y) #s(literal -1/2 binary64)))) |
(+.f64 (*.f64 #s(literal 1 binary64) z) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
(+.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)) (*.f64 #s(literal 1 binary64) z)) |
(+.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)) z) |
(+.f64 z (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
(neg.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64))) |
(fma.f64 (*.f64 (neg.f64 y) y) #s(literal 1/2 binary64) #s(literal 1 binary64)) |
(fma.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 y) y) #s(literal 1 binary64)) |
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 y y) #s(literal 1 binary64)) |
(fma.f64 y (*.f64 y #s(literal -1/2 binary64)) #s(literal 1 binary64)) |
(-.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64)) |
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 y y))) |
(+.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal 1 binary64)) |
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))) |
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y))) |
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y))) |
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y))) |
(*.f64 (neg.f64 y) (neg.f64 y)) |
(*.f64 (fabs.f64 y) (fabs.f64 y)) |
(*.f64 y y) |
(pow.f64 (neg.f64 (neg.f64 y)) #s(literal 2 binary64)) |
(pow.f64 (neg.f64 (fabs.f64 y)) #s(literal 2 binary64)) |
(pow.f64 (fabs.f64 (fabs.f64 y)) #s(literal 2 binary64)) |
(pow.f64 (neg.f64 y) #s(literal 2 binary64)) |
(pow.f64 (fabs.f64 y) #s(literal 2 binary64)) |
(pow.f64 y #s(literal 2 binary64)) |
(neg.f64 (*.f64 (neg.f64 y) y)) |
(sqrt.f64 (*.f64 (*.f64 y y) (*.f64 y y))) |
(fabs.f64 (*.f64 (neg.f64 y) y)) |
(fabs.f64 (*.f64 y y)) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
(neg.f64 (-.f64 (-.f64 (neg.f64 x) y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
(neg.f64 (-.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) y) x)) |
(fma.f64 (*.f64 #s(literal -1 binary64) z) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (+.f64 x y)) |
(fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) #s(literal -1 binary64) (+.f64 x y)) |
(fma.f64 (neg.f64 z) (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (+.f64 x y)) |
(fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) (neg.f64 z) (+.f64 x y)) |
(fma.f64 #s(literal -1 binary64) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) (+.f64 x y)) |
(fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y)) |
(fma.f64 z (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) (+.f64 x y)) |
(-.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z x) (neg.f64 y)) |
(-.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y) (neg.f64 x)) |
(-.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) (-.f64 (neg.f64 x) y)) |
(-.f64 (+.f64 x y) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z)) |
(-.f64 x (-.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) z) y)) |
(+.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z x) y) |
(+.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y) x) |
(+.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z) (+.f64 x y)) |
(+.f64 (+.f64 x y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
(+.f64 x (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y)) |
(neg.f64 (-.f64 (neg.f64 x) y)) |
(-.f64 x (neg.f64 y)) |
(-.f64 y (neg.f64 x)) |
(+.f64 x (neg.f64 (neg.f64 y))) |
(+.f64 x y) |
(+.f64 y x) |
(neg.f64 (-.f64 (neg.f64 x) (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)))) |
(-.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) (neg.f64 x)) |
(-.f64 x (neg.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)))) |
(-.f64 (sin.f64 y) (neg.f64 (+.f64 #s(approx (* z (cos y)) z) x))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) (neg.f64 (neg.f64 x))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 x (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z))) |
(+.f64 (sin.f64 y) (+.f64 #s(approx (* z (cos y)) z) x)) |
(neg.f64 (-.f64 (neg.f64 #s(approx (* z (cos y)) z)) (sin.f64 y))) |
(-.f64 #s(approx (* z (cos y)) z) (neg.f64 (sin.f64 y))) |
(-.f64 (sin.f64 y) (neg.f64 #s(approx (* z (cos y)) z))) |
(+.f64 #s(approx (* z (cos y)) z) (sin.f64 y)) |
(+.f64 (sin.f64 y) (neg.f64 (neg.f64 #s(approx (* z (cos y)) z)))) |
(+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) |
#s(approx (* z (cos y)) z) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 z (cos.f64 y) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x))) |
#s(approx x x) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) |
#s(approx (+ z x) z) |
#s(approx (+ z x) (+.f64 x z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 x z))) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y)) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ x y) y) |
#s(approx (+ x y) (+.f64 x y)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 z x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (*.f64 (-.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y) x) #s(literal -1 binary64)) x)) |
#s(approx (+ x y) (*.f64 (-.f64 (/.f64 y x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) x)) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 z x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (*.f64 (-.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y) x) #s(literal -1 binary64)) x)) |
#s(approx (+ x y) (*.f64 (-.f64 (/.f64 y x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 z x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (+.f64 z y) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y z) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) x) y (/.f64 #s(literal 1 binary64) x)) y (/.f64 z x))) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
#s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z)) |
#s(approx (cos y) #s(literal 1 binary64)) |
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (* y y) (*.f64 y y)) |
#s(approx (* z (cos y)) (fma.f64 (*.f64 z (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64))) (*.f64 y y) z)) |
#s(approx (* z (cos y)) (fma.f64 (fma.f64 (*.f64 z (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64))) (*.f64 y y) (*.f64 #s(literal -1/2 binary64) z)) (*.f64 y y) z)) |
#s(approx (cos y) (cos.f64 y)) |
#s(approx (sin y) (sin.f64 y)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) (*.f64 y y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (-.f64 (/.f64 (+.f64 x z) (*.f64 y y)) (/.f64 #s(literal -1 binary64) y))) (*.f64 y y))) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 z (*.f64 y y))) (*.f64 y y))) |
#s(approx (+ (* (* y y) -1/2) 1) (*.f64 (*.f64 y y) #s(literal -1/2 binary64))) |
#s(approx (+ (* (* y y) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/2 binary64)) (*.f64 y y))) |
#s(approx (+ x y) (*.f64 (-.f64 (/.f64 x y) #s(literal -1 binary64)) y)) |
#s(approx (* z (cos y)) (*.f64 z (cos.f64 y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 y y) (fma.f64 #s(literal -1/2 binary64) z (/.f64 (-.f64 (/.f64 (+.f64 x z) y) #s(literal -1 binary64)) y)))) |
#s(approx (+ x y) (*.f64 (-.f64 (/.f64 x y) #s(literal -1 binary64)) y)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (sin.f64 y) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) |
#s(approx (* (+ (* (* y y) -1/2) 1) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (*.f64 (+.f64 (/.f64 (+.f64 (sin.f64 y) x) z) (cos.f64 y)) z)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) |
#s(approx (+ (* (cos y) z) (sin y)) (*.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) z)) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 x z) #s(literal -1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) #s(literal -1 binary64)) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (*.f64 (+.f64 (/.f64 (+.f64 (sin.f64 y) x) z) (cos.f64 y)) z)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) |
#s(approx (+ (* (cos y) z) (sin y)) (*.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) z)) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 x z) #s(literal -1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) #s(literal -1 binary64)) z)) |
#s(approx (+ (* (+ (* (* y y) -1/2) 1) z) (+ x y)) (*.f64 (-.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) #s(literal -1 binary64)) z)) |
Compiled 2 375 to 1 078 computations (54.6% saved)
19 alts after pruning (15 fresh and 4 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 287 | 6 | 293 |
| Fresh | 3 | 9 | 12 |
| Picked | 4 | 1 | 5 |
| Done | 0 | 3 | 3 |
| Total | 294 | 19 | 313 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
| 73.1% | (fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) | |
| 55.1% | (+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) | |
| 73.1% | (+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) | |
| 26.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) | |
| 55.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) z (sin.f64 y))) | |
| ✓ | 55.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
| ▶ | 51.2% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
| 63.0% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) | |
| ✓ | 64.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
| 20.1% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) | |
| ▶ | 8.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
| 2.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) | |
| 26.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) | |
| ▶ | 27.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
| ✓ | 21.9% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
| 76.6% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) | |
| ▶ | 81.2% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x)) |
| ▶ | 60.7% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
Compiled 556 to 530 computations (4.7% saved)
| Inputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x)) |
(fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x) |
x |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) |
(*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) |
(/.f64 (sin.f64 y) (*.f64 x z)) |
(sin.f64 y) |
y |
(*.f64 x z) |
z |
(/.f64 (cos.f64 y) x) |
(cos.f64 y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
(+.f64 z y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 z y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
(fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x)) |
#s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
(*.f64 (*.f64 z y) #s(literal -1/2 binary64)) |
(+.f64 z x) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
(+.f64 (sin.f64 y) x) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (+ (sin y) (* z (cos y))) x))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (/ (* z (+ (cos y) (/ (sin y) z))) x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ (+ (cos y) (/ (sin y) z)) x))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (/ (sin y) (* x z)))) |
#s(approx (* x z) #s(hole binary64 (* x z))) |
#s(approx (/ (cos y) x) #s(hole binary64 (/ (cos y) x))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (sin y) x) #s(hole binary64 (sin y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (sin y)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (* -1 (/ (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z)))) x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (* -1 (/ (+ (* -1 (cos y)) (* -1 (/ (sin y) z))) x)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ z x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ y x) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* -1/2 (/ (* y z) x)) (/ 1 x))) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* y (+ (* -1/2 (/ z x)) (* -1/6 (/ y x)))) (/ 1 x))) (/ z x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ 1 x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (/ 1 x) (/ y (* x z))))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (* y (+ (* -1/2 (/ y x)) (/ 1 (* x z)))) (/ 1 x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (* y (+ (* y (- (* -1/6 (/ y (* x z))) (* 1/2 (/ 1 x)))) (/ 1 (* x z)))) (/ 1 x)))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (/ y (* x z)))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* -1/6 (/ (pow y 2) (* x z))) (/ 1 (* x z)))))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* (pow y 2) (- (* 1/120 (/ (pow y 2) (* x z))) (* 1/6 (/ 1 (* x z))))) (/ 1 (* x z)))))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* (pow y 2) (- (* (pow y 2) (+ (* -1/5040 (/ (pow y 2) (* x z))) (* 1/120 (/ 1 (* x z))))) (* 1/6 (/ 1 (* x z))))) (/ 1 (* x z)))))) |
#s(approx (sin y) #s(hole binary64 y)) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* -1/2 (/ (pow y 2) x)) (/ 1 x)))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* (pow y 2) (- (* 1/24 (/ (pow y 2) x)) (* 1/2 (/ 1 x)))) (/ 1 x)))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* (pow y 2) (- (* (pow y 2) (+ (* -1/720 (/ (pow y 2) x)) (* 1/24 (/ 1 x)))) (* 1/2 (/ 1 x)))) (/ 1 x)))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* y (+ 1 (* -1/2 (* y z)))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (* y z))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx (* (* z y) -1/2) #s(hole binary64 (* -1/2 (* y z)))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (* z (+ (/ (cos y) x) (/ (sin y) (* x z)))))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (/ (cos y) x) (/ (sin y) (* x z))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ z y) #s(hole binary64 (* y (+ 1 (/ z y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* y (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ z y) #s(hole binary64 (* -1 (* y (- (* -1 (/ z y)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* y (- (* 1/2 z) (/ 1 y)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (sin y) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ (sin y) x) (/ (* z (cos y)) x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ (+ (/ (sin y) x) (/ (* z (cos y)) x)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (+ y (* -1/2 (* (pow y 2) z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (* z (cos y)) x))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ z y) #s(hole binary64 (* z (+ 1 (/ y z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* z (+ (* -1/2 (pow y 2)) (/ y z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* z (+ (* -1/2 y) (/ 1 z))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (cos y) x)) (* -1 (/ (sin y) (* x z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
#s(approx (+ z y) #s(hole binary64 (* -1 (* z (- (* -1 (/ y z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* -1 (* z (+ (* -1 (/ y z)) (* 1/2 (pow y 2))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* z (- (* 1/2 y) (/ 1 z)))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
9 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 3.0ms | z | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/ (sin y) (* x z)) (sin y) y (* x z) z (/ (cos y) x) (cos y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y)) (+ z y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* z y) -1/2) 1) y) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* (* z y) -1/2) (+ z x) (+ (* (cos y) z) (+ (sin y) x)) (+ (sin y) x)) |
| 3.0ms | x | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/ (sin y) (* x z)) (sin y) y (* x z) z (/ (cos y) x) (cos y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y)) (+ z y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* z y) -1/2) 1) y) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* (* z y) -1/2) (+ z x) (+ (* (cos y) z) (+ (sin y) x)) (+ (sin y) x)) |
| 3.0ms | y | @ | -inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/ (sin y) (* x z)) (sin y) y (* x z) z (/ (cos y) x) (cos y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y)) (+ z y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* z y) -1/2) 1) y) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* (* z y) -1/2) (+ z x) (+ (* (cos y) z) (+ (sin y) x)) (+ (sin y) x)) |
| 3.0ms | y | @ | inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/ (sin y) (* x z)) (sin y) y (* x z) z (/ (cos y) x) (cos y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y)) (+ z y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* z y) -1/2) 1) y) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* (* z y) -1/2) (+ z x) (+ (* (cos y) z) (+ (sin y) x)) (+ (sin y) x)) |
| 3.0ms | x | @ | inf | ((+ (* (cos y) z) (+ (sin y) x)) (+ (* x (/ (+ (* (cos y) z) (sin y)) x)) x) x (/ (+ (* (cos y) z) (sin y)) x) (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/ (sin y) (* x z)) (sin y) y (* x z) z (/ (cos y) x) (cos y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (cos y) z) (sin y)) (+ z y) (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (* (+ (* (* z y) -1/2) 1) y) (+ (* (* z y) -1/2) 1) (* z y) -1/2 1 (+ (+ x (sin y)) (* z (cos y))) (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+ (* (* z y) -1/2) 1) (* (* z y) -1/2) (+ z x) (+ (* (cos y) z) (+ (sin y) x)) (+ (sin y) x)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 403 | 2154 |
| 0 | 431 | 2075 |
| 1 | 2644 | 2033 |
| 0 | 8351 | 1920 |
| 1 | 16897 | 1920 |
| 1× | saturated |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x)) |
(fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x) |
x |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) |
(*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) |
(/.f64 (sin.f64 y) (*.f64 x z)) |
(sin.f64 y) |
y |
(*.f64 x z) |
z |
(/.f64 (cos.f64 y) x) |
(cos.f64 y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
(+.f64 z y) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y)) |
(*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(*.f64 z y) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
(fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x)) |
#s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
(*.f64 (*.f64 z y) #s(literal -1/2 binary64)) |
(+.f64 z x) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
(+.f64 (sin.f64 y) x) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ (sin y) (* z (cos y))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ (sin y) (* z (cos y)))))) |
#s(approx x #s(hole binary64 x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (+ (sin y) (* z (cos y))) x))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (/ (* z (+ (cos y) (/ (sin y) z))) x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ (+ (cos y) (/ (sin y) z)) x))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (/ (sin y) (* x z)))) |
#s(approx (* x z) #s(hole binary64 (* x z))) |
#s(approx (/ (cos y) x) #s(hole binary64 (/ (cos y) x))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ z (* y (+ 1 (* -1/2 (* y z))))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* -1/2 (* y z)))))))) |
#s(approx (+ z x) #s(hole binary64 z)) |
#s(approx (+ z x) #s(hole binary64 (+ x z))) |
#s(approx (+ (sin y) x) #s(hole binary64 (sin y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (sin y)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* x (+ 1 (+ (/ (sin y) x) (/ (* z (cos y)) x)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* x (+ 1 (+ (/ z x) (/ (* y (+ 1 (* -1/2 (* y z)))) x)))))) |
#s(approx (+ z x) #s(hole binary64 (* x (+ 1 (/ z x))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* x (+ 1 (/ (sin y) x))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (sin y) (* z (cos y))) x)) 1))))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (* -1 (/ (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z)))) x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (* -1 (/ (+ (* -1 (cos y)) (* -1 (/ (sin y) z))) x)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ z (* y (+ 1 (* -1/2 (* y z))))) x)) 1))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* x (- (* -1 (/ z x)) 1))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (* -1 (* x (- (* -1 (/ (sin y) x)) 1))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ y z)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (+ x (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y))))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ z x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ y x) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* -1/2 (/ (* y z) x)) (/ 1 x))) (/ z x)))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (* y (+ (* y (+ (* -1/2 (/ z x)) (* -1/6 (/ y x)))) (/ 1 x))) (/ z x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ 1 x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (/ 1 x) (/ y (* x z))))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (* y (+ (* -1/2 (/ y x)) (/ 1 (* x z)))) (/ 1 x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (* y (+ (* y (- (* -1/6 (/ y (* x z))) (* 1/2 (/ 1 x)))) (/ 1 (* x z)))) (/ 1 x)))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (/ y (* x z)))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* -1/6 (/ (pow y 2) (* x z))) (/ 1 (* x z)))))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* (pow y 2) (- (* 1/120 (/ (pow y 2) (* x z))) (* 1/6 (/ 1 (* x z))))) (/ 1 (* x z)))))) |
#s(approx (/ (sin y) (* x z)) #s(hole binary64 (* y (+ (* (pow y 2) (- (* (pow y 2) (+ (* -1/5040 (/ (pow y 2) (* x z))) (* 1/120 (/ 1 (* x z))))) (* 1/6 (/ 1 (* x z))))) (/ 1 (* x z)))))) |
#s(approx (sin y) #s(hole binary64 y)) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))) |
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* -1/2 (/ (pow y 2) x)) (/ 1 x)))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* (pow y 2) (- (* 1/24 (/ (pow y 2) x)) (* 1/2 (/ 1 x)))) (/ 1 x)))) |
#s(approx (/ (cos y) x) #s(hole binary64 (+ (* (pow y 2) (- (* (pow y 2) (+ (* -1/720 (/ (pow y 2) x)) (* 1/24 (/ 1 x)))) (* 1/2 (/ 1 x)))) (/ 1 x)))) |
#s(approx (cos y) #s(hole binary64 1)) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2))))) |
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ y z))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (+ z (* y (+ 1 (* y (+ (* -1/2 z) (* -1/6 y)))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* y (+ 1 (* -1/2 (* y z)))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (* y z))))) |
#s(approx (* z y) #s(hole binary64 (* y z))) |
#s(approx (* (* z y) -1/2) #s(hole binary64 (* -1/2 (* y z)))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x y))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* -1/6 (pow y 2))))))) |
#s(approx (+ (sin y) x) #s(hole binary64 (+ x (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) #s(hole binary64 (* z (+ (/ (cos y) x) (/ (sin y) (* x z)))))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (+ (/ (cos y) x) (/ (sin y) (* x z))))) |
#s(approx (cos y) #s(hole binary64 (cos y))) |
#s(approx (+ z y) #s(hole binary64 (* y (+ 1 (/ z y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1/2 (* (pow y 2) z)))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1/2 z) (+ (/ 1 y) (+ (/ x (pow y 2)) (/ z (pow y 2)))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* y (+ (* -1/2 z) (/ 1 y))))) |
#s(approx (+ z y) #s(hole binary64 (* -1 (* y (- (* -1 (/ z y)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (- (* -1 (/ (+ x z) y)) 1) y)) (* -1/2 z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* y (- (* 1/2 z) (/ 1 y)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (sin y) x))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (+ (/ (sin y) x) (/ (* z (cos y)) x)))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) #s(hole binary64 (/ (+ (/ (sin y) x) (/ (* z (cos y)) x)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (+ x (+ y (* z (+ 1 (* -1/2 (pow y 2)))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (+ y (* -1/2 (* (pow y 2) z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (cos y)))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* z (+ (cos y) (+ (/ x z) (/ (sin y) z)))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (/ (* z (cos y)) x))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* z (+ (cos y) (/ (sin y) z))))) |
#s(approx (+ z y) #s(hole binary64 (* z (+ 1 (/ y z))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (* -1/2 (pow y 2)))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* z (+ 1 (+ (* -1/2 (pow y 2)) (+ (/ x z) (/ y z))))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* z (+ (* -1/2 (pow y 2)) (/ y z))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* z (+ (* -1/2 y) (/ 1 z))))) |
#s(approx (+ z x) #s(hole binary64 (* z (+ 1 (/ x z))))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (+ x (sin y)) z))))))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (cos y) x)) (* -1 (/ (sin y) (* x z)))))))) |
#s(approx (+ (* (cos y) z) (sin y)) #s(hole binary64 (* -1 (* z (+ (* -1 (cos y)) (* -1 (/ (sin y) z))))))) |
#s(approx (+ z y) #s(hole binary64 (* -1 (* z (- (* -1 (/ y z)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (* 1/2 (pow y 2)) 1))))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(hole binary64 (* -1 (* z (- (+ (* -1 (/ (+ x y) z)) (* 1/2 (pow y 2))) 1))))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) #s(hole binary64 (* -1 (* z (+ (* -1 (/ y z)) (* 1/2 (pow y 2))))))) |
#s(approx (+ (* (* z y) -1/2) 1) #s(hole binary64 (* -1 (* z (- (* 1/2 y) (/ 1 z)))))) |
#s(approx (+ z x) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) 1))))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x)) |
(neg.f64 (-.f64 (neg.f64 x) (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x))) |
(fma.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x (neg.f64 (neg.f64 x))) |
(fma.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x x) |
(fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) (neg.f64 (neg.f64 x))) |
(fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x) |
(-.f64 (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x) (neg.f64 x)) |
(-.f64 x (*.f64 (neg.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z))) x)) |
(-.f64 x (*.f64 (neg.f64 x) #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)))) |
(-.f64 x (neg.f64 (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x))) |
(+.f64 (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x) (neg.f64 (neg.f64 x))) |
(+.f64 (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x) x) |
(+.f64 x (*.f64 #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x)) |
x |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) |
(*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z) |
(*.f64 z (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 (neg.f64 (*.f64 z (cos.f64 y))) (/.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 z (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 (/.f64 (cos.f64 y) x) z (*.f64 (/.f64 (sin.f64 y) (*.f64 x z)) z)) |
(fma.f64 (*.f64 z (cos.f64 y)) (/.f64 #s(literal 1 binary64) x) (*.f64 z (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 z (/.f64 (cos.f64 y) x) (*.f64 z (/.f64 (sin.f64 y) (*.f64 x z)))) |
(-.f64 (*.f64 (/.f64 (cos.f64 y) x) z) (neg.f64 (*.f64 (/.f64 (sin.f64 y) (*.f64 x z)) z))) |
(-.f64 (*.f64 (/.f64 (cos.f64 y) x) z) (*.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))) z)) |
(-.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (*.f64 (neg.f64 z) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(-.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (neg.f64 (*.f64 z (/.f64 (sin.f64 y) (*.f64 x z))))) |
(+.f64 (*.f64 (/.f64 (cos.f64 y) x) z) (*.f64 (/.f64 (sin.f64 y) (*.f64 x z)) z)) |
(+.f64 (/.f64 (*.f64 z (cos.f64 y)) x) (*.f64 z (/.f64 (sin.f64 y) (*.f64 x z)))) |
(*.f64 (fma.f64 (cos.f64 y) (*.f64 x z) (*.f64 x (sin.f64 y))) (/.f64 #s(literal 1 binary64) (*.f64 x (*.f64 x z)))) |
(*.f64 (fma.f64 (sin.f64 y) x (*.f64 (*.f64 x z) (cos.f64 y))) (/.f64 #s(literal 1 binary64) (*.f64 (*.f64 x z) x))) |
(/.f64 (fma.f64 (neg.f64 (cos.f64 y)) (neg.f64 (*.f64 x z)) (*.f64 (neg.f64 x) (neg.f64 (sin.f64 y)))) (*.f64 (neg.f64 x) (neg.f64 (*.f64 x z)))) |
(/.f64 (fma.f64 (neg.f64 (cos.f64 y)) z (*.f64 (neg.f64 x) (/.f64 (sin.f64 y) x))) (*.f64 (neg.f64 x) z)) |
(/.f64 (fma.f64 (neg.f64 (cos.f64 y)) (*.f64 x z) (*.f64 (neg.f64 x) (sin.f64 y))) (*.f64 (neg.f64 x) (*.f64 x z))) |
(/.f64 (fma.f64 (cos.f64 y) (neg.f64 (*.f64 x z)) (*.f64 x (neg.f64 (sin.f64 y)))) (*.f64 x (neg.f64 (*.f64 x z)))) |
(/.f64 (fma.f64 (cos.f64 y) z (*.f64 x (/.f64 (sin.f64 y) x))) (*.f64 x z)) |
(/.f64 (fma.f64 (neg.f64 (sin.f64 y)) (neg.f64 x) (*.f64 (neg.f64 (*.f64 x z)) (neg.f64 (cos.f64 y)))) (*.f64 (neg.f64 (*.f64 x z)) (neg.f64 x))) |
(/.f64 (fma.f64 (neg.f64 (sin.f64 y)) x (*.f64 (neg.f64 (*.f64 x z)) (cos.f64 y))) (*.f64 (neg.f64 (*.f64 x z)) x)) |
(/.f64 (fma.f64 (/.f64 (sin.f64 y) x) (neg.f64 x) (*.f64 z (neg.f64 (cos.f64 y)))) (*.f64 z (neg.f64 x))) |
(/.f64 (fma.f64 (/.f64 (sin.f64 y) x) x (*.f64 z (cos.f64 y))) (*.f64 x z)) |
(/.f64 (fma.f64 (sin.f64 y) (neg.f64 x) (*.f64 (*.f64 x z) (neg.f64 (cos.f64 y)))) (*.f64 (*.f64 x z) (neg.f64 x))) |
(/.f64 (-.f64 (*.f64 (neg.f64 (cos.f64 y)) (*.f64 x z)) (*.f64 (neg.f64 x) (*.f64 #s(literal -1 binary64) (sin.f64 y)))) (*.f64 (neg.f64 x) (*.f64 x z))) |
(/.f64 (-.f64 (*.f64 (cos.f64 y) (*.f64 x z)) (*.f64 x (*.f64 #s(literal -1 binary64) (sin.f64 y)))) (*.f64 x (*.f64 x z))) |
(/.f64 (-.f64 (*.f64 (neg.f64 (sin.f64 y)) x) (*.f64 (neg.f64 (*.f64 x z)) (neg.f64 (cos.f64 y)))) (*.f64 (neg.f64 (*.f64 x z)) x)) |
(/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 y) x) x) (*.f64 z (neg.f64 (cos.f64 y)))) (*.f64 x z)) |
(/.f64 (-.f64 (*.f64 (sin.f64 y) x) (*.f64 (*.f64 x z) (neg.f64 (cos.f64 y)))) (*.f64 (*.f64 x z) x)) |
(/.f64 (neg.f64 (fma.f64 (cos.f64 y) (*.f64 x z) (*.f64 x (sin.f64 y)))) (neg.f64 (*.f64 x (*.f64 x z)))) |
(/.f64 (neg.f64 (fma.f64 (sin.f64 y) x (*.f64 (*.f64 x z) (cos.f64 y)))) (neg.f64 (*.f64 (*.f64 x z) x))) |
(/.f64 (fma.f64 (cos.f64 y) (*.f64 x z) (*.f64 x (sin.f64 y))) (*.f64 x (*.f64 x z))) |
(/.f64 (fma.f64 (sin.f64 y) x (*.f64 (*.f64 x z) (cos.f64 y))) (*.f64 (*.f64 x z) x)) |
(neg.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 y)) x) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x z))) (*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 y) x))) |
(fma.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x z))) (*.f64 (/.f64 (neg.f64 (cos.f64 y)) x) #s(literal -1 binary64))) |
(fma.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x z))) (neg.f64 (/.f64 (neg.f64 (cos.f64 y)) x))) |
(fma.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x z))) (/.f64 (cos.f64 y) x)) |
(fma.f64 (neg.f64 (cos.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))) #s(literal -1 binary64))) |
(fma.f64 (neg.f64 (cos.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 x)) (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 (neg.f64 (cos.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 x)) (neg.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))))) |
(fma.f64 (neg.f64 (cos.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 x)) (/.f64 (sin.f64 y) (*.f64 x z))) |
(fma.f64 (/.f64 (sin.f64 y) x) (/.f64 #s(literal 1 binary64) z) (*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 y) x))) |
(fma.f64 (/.f64 (sin.f64 y) x) (/.f64 #s(literal 1 binary64) z) (*.f64 (/.f64 (neg.f64 (cos.f64 y)) x) #s(literal -1 binary64))) |
(fma.f64 (/.f64 (sin.f64 y) x) (/.f64 #s(literal 1 binary64) z) (neg.f64 (/.f64 (neg.f64 (cos.f64 y)) x))) |
(fma.f64 (/.f64 (sin.f64 y) x) (/.f64 #s(literal 1 binary64) z) (/.f64 (cos.f64 y) x)) |
(fma.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) (*.f64 x z)) (*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 y) x))) |
(fma.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) (*.f64 x z)) (*.f64 (/.f64 (neg.f64 (cos.f64 y)) x) #s(literal -1 binary64))) |
(fma.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) (*.f64 x z)) (neg.f64 (/.f64 (neg.f64 (cos.f64 y)) x))) |
(fma.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) (*.f64 x z)) (/.f64 (cos.f64 y) x)) |
(fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))) #s(literal -1 binary64))) |
(fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (neg.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))))) |
(fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (/.f64 (sin.f64 y) (*.f64 x z))) |
(-.f64 (/.f64 (cos.f64 y) x) (*.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (*.f64 x z)))) |
(-.f64 (/.f64 (cos.f64 y) x) (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z)))) |
(-.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (neg.f64 (cos.f64 y)) x)) |
(+.f64 (/.f64 (*.f64 (cos.f64 y) (*.f64 x z)) (*.f64 x (*.f64 x z))) (/.f64 (*.f64 x (sin.f64 y)) (*.f64 x (*.f64 x z)))) |
(+.f64 (/.f64 (*.f64 (sin.f64 y) x) (*.f64 (*.f64 x z) x)) (/.f64 (*.f64 (*.f64 x z) (cos.f64 y)) (*.f64 (*.f64 x z) x))) |
(+.f64 (/.f64 (cos.f64 y) x) (*.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))) #s(literal -1 binary64))) |
(+.f64 (/.f64 (cos.f64 y) x) (*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 y) (*.f64 x z)))) |
(+.f64 (/.f64 (cos.f64 y) x) (neg.f64 (neg.f64 (/.f64 (sin.f64 y) (*.f64 x z))))) |
(+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (*.f64 #s(literal 1 binary64) (/.f64 (cos.f64 y) x))) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (*.f64 (/.f64 (neg.f64 (cos.f64 y)) x) #s(literal -1 binary64))) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (neg.f64 (/.f64 (neg.f64 (cos.f64 y)) x))) |
(+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) |
(*.f64 (neg.f64 (sin.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 x z)))) |
(*.f64 (/.f64 (sin.f64 y) x) (/.f64 #s(literal 1 binary64) z)) |
(*.f64 (sin.f64 y) (/.f64 #s(literal 1 binary64) (*.f64 x z))) |
(/.f64 (neg.f64 (neg.f64 (sin.f64 y))) (neg.f64 (neg.f64 (*.f64 x z)))) |
(/.f64 (neg.f64 (sin.f64 y)) (neg.f64 (*.f64 x z))) |
(/.f64 (neg.f64 (/.f64 (sin.f64 y) x)) (neg.f64 z)) |
(/.f64 (/.f64 (sin.f64 y) x) z) |
(/.f64 (sin.f64 y) (*.f64 x z)) |
(sin.f64 y) |
y |
(*.f64 x z) |
(*.f64 z x) |
z |
(*.f64 (neg.f64 (cos.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 x))) |
(*.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x)) |
(/.f64 (neg.f64 (neg.f64 (cos.f64 y))) (neg.f64 (neg.f64 x))) |
(/.f64 (neg.f64 (cos.f64 y)) (neg.f64 x)) |
(/.f64 (cos.f64 y) x) |
(sin.f64 (+.f64 (neg.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 (fabs.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(sin.f64 (+.f64 y (*.f64 (PI.f64) #s(literal 1/2 binary64)))) |
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
(cos.f64 (neg.f64 (neg.f64 y))) |
(cos.f64 (neg.f64 (fabs.f64 y))) |
(cos.f64 (fabs.f64 (fabs.f64 y))) |
(cos.f64 (neg.f64 y)) |
(cos.f64 (fabs.f64 y)) |
(cos.f64 y) |
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
(neg.f64 (-.f64 (neg.f64 z) y)) |
(-.f64 z (neg.f64 y)) |
(-.f64 y (neg.f64 z)) |
(+.f64 z (neg.f64 (neg.f64 y))) |
(+.f64 z y) |
(+.f64 y (neg.f64 (neg.f64 z))) |
(+.f64 y z) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y)) |
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y) |
(*.f64 y (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64))) |
(fma.f64 #s(literal 1 binary64) y (*.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) y)) |
(fma.f64 y #s(literal 1 binary64) (*.f64 y (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(-.f64 (*.f64 y #s(literal 1 binary64)) (*.f64 (neg.f64 y) (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(-.f64 (*.f64 y #s(literal 1 binary64)) (neg.f64 (*.f64 y (*.f64 (*.f64 z y) #s(literal -1/2 binary64))))) |
(-.f64 (*.f64 #s(literal 1 binary64) y) (*.f64 (neg.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y)) |
(-.f64 (*.f64 #s(literal 1 binary64) y) (neg.f64 (*.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) y))) |
(+.f64 (*.f64 y #s(literal 1 binary64)) (*.f64 y (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(+.f64 (*.f64 #s(literal 1 binary64) y) (*.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) y)) |
(*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) z)) z) |
(*.f64 z (fma.f64 #s(literal -1/2 binary64) y (/.f64 #s(literal 1 binary64) z))) |
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 z y)) #s(literal 1 binary64))) |
(neg.f64 (-.f64 (neg.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) #s(literal 1 binary64))) |
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 z y)))) |
(neg.f64 (+.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64))))) |
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (/.f64 z z)) |
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) (/.f64 z z)) |
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (/.f64 z z)) |
(fma.f64 #s(literal -1/2 binary64) (*.f64 z y) #s(literal 1 binary64)) |
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) (/.f64 z z)) |
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) #s(literal 1 binary64)) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (neg.f64 z) (/.f64 #s(literal 1 binary64) z))) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (*.f64 (neg.f64 (/.f64 #s(literal 1 binary64) z)) z)) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (neg.f64 (/.f64 z z))) |
(-.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) #s(literal -1 binary64)) |
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) y)) z)) |
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 z y)) #s(literal -1/2 binary64))) |
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 z) (*.f64 #s(literal -1/2 binary64) y))) |
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 z y))) |
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) |
(+.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) (/.f64 z z)) |
(+.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64)) #s(literal 1 binary64)) |
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 z y)))) |
(+.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (*.f64 z y) #s(literal -1/2 binary64))))) |
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
(*.f64 z y) |
(*.f64 y z) |
#s(literal -1/2 binary64) |
#s(literal 1 binary64) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 x z))) |
(neg.f64 (-.f64 (-.f64 (neg.f64 z) x) (*.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y))) |
(fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 x z)) |
(fma.f64 y #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) (+.f64 x z)) |
(-.f64 (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y z) (neg.f64 x)) |
(-.f64 (*.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y) (-.f64 (neg.f64 z) x)) |
(-.f64 (+.f64 x z) (*.f64 (neg.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))) y)) |
(-.f64 (+.f64 x z) (*.f64 (neg.f64 y) #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))))) |
(-.f64 (+.f64 x z) (neg.f64 (*.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y))) |
(+.f64 (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y z) x) |
(+.f64 (*.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y) (+.f64 x z)) |
(+.f64 (+.f64 x z) (*.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y)) |
#s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
(*.f64 (*.f64 #s(literal -1/2 binary64) y) z) |
(*.f64 (*.f64 z y) #s(literal -1/2 binary64)) |
(*.f64 #s(literal -1/2 binary64) (*.f64 z y)) |
(*.f64 z (*.f64 #s(literal -1/2 binary64) y)) |
(neg.f64 (-.f64 (neg.f64 z) x)) |
(-.f64 x (neg.f64 z)) |
(-.f64 z (neg.f64 x)) |
(+.f64 x (neg.f64 (neg.f64 z))) |
(+.f64 x z) |
(+.f64 z (neg.f64 (neg.f64 x))) |
(+.f64 z x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (sin.f64 y) x)) |
(neg.f64 (-.f64 (neg.f64 x) (sin.f64 y))) |
(-.f64 x (neg.f64 (sin.f64 y))) |
(-.f64 (sin.f64 y) (neg.f64 x)) |
(+.f64 x (neg.f64 (neg.f64 (sin.f64 y)))) |
(+.f64 x (sin.f64 y)) |
(+.f64 (sin.f64 y) (neg.f64 (neg.f64 x))) |
(+.f64 (sin.f64 y) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 z (cos.f64 y) (sin.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x))) |
#s(approx x x) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (/.f64 (*.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) z) x)) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) x)) |
#s(approx (/ (sin y) (* x z)) (/.f64 (sin.f64 y) (*.f64 x z))) |
#s(approx (* x z) (*.f64 x z)) |
#s(approx (/ (cos y) x) (/.f64 (cos.f64 y) x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y (+.f64 x z))) |
#s(approx (+ z x) z) |
#s(approx (+ z x) (+.f64 x z)) |
#s(approx (+ (sin y) x) (sin.f64 y)) |
#s(approx (+ (sin y) x) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 (-.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) #s(literal -1 binary64)) x)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y z) x) #s(literal -1 binary64)) x)) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 z x) #s(literal -1 binary64)) x)) |
#s(approx (+ (sin y) x) (*.f64 (-.f64 (/.f64 (sin.f64 y) x) #s(literal -1 binary64)) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) x))) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (neg.f64 (/.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (sin.f64 y) z)) (cos.f64 y)) z) x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (sin.f64 y) z)) (cos.f64 y)) x))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y z) x)) x))) |
#s(approx (+ z x) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 z x)) x))) |
#s(approx (+ (sin y) x) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 (sin.f64 y) x)) x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 z x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (+.f64 z y) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y z) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) x) y (/.f64 #s(literal 1 binary64) x)) y (/.f64 z x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (+.f64 (/.f64 y (*.f64 x z)) (/.f64 #s(literal 1 binary64) x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (fma.f64 (/.f64 y (*.f64 x z)) #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) x)) y (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) |
#s(approx (/ (sin y) (* x z)) (/.f64 y (*.f64 x z))) |
#s(approx (/ (sin y) (* x z)) (*.f64 (/.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 x z)) y)) |
#s(approx (/ (sin y) (* x z)) (fma.f64 y (*.f64 (/.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 x z)) (*.f64 y y)) (/.f64 y (*.f64 x z)))) |
#s(approx (/ (sin y) (* x z)) (fma.f64 y (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 x z)) (*.f64 y y) (/.f64 #s(literal -1/6 binary64) (*.f64 x z))) (*.f64 y y)) (/.f64 y (*.f64 x z)))) |
#s(approx (sin y) y) |
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y)) |
#s(approx (/ (cos y) x) (/.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)) |
#s(approx (/ (cos y) x) (fma.f64 (/.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) x) (*.f64 y y) (/.f64 #s(literal 1 binary64) x))) |
#s(approx (/ (cos y) x) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) x) (*.f64 y y) (/.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) (/.f64 #s(literal 1 binary64) x))) |
#s(approx (cos y) #s(literal 1 binary64)) |
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (cos y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64))) |
#s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y)) |
#s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z)) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64)) y)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64))) |
#s(approx (* z y) (*.f64 z y)) |
#s(approx (* (* z y) -1/2) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) |
#s(approx (+ (sin y) x) (+.f64 x y)) |
#s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x)) |
#s(approx (+ (sin y) x) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y x)) |
#s(approx (* (+ (/ (sin y) (* x z)) (/ (cos y) x)) z) (*.f64 (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (+.f64 (/.f64 (cos.f64 y) x) (/.f64 (sin.f64 y) (*.f64 x z)))) |
#s(approx (cos y) (cos.f64 y)) |
#s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) (*.f64 y y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 y y) (+.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 #s(literal 1 binary64) y)) (/.f64 (+.f64 x z) (*.f64 y y))))) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y #s(literal 1 binary64))) |
#s(approx (+ z y) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 z y)) y))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) z) (/.f64 (-.f64 (neg.f64 (/.f64 (+.f64 x z) y)) #s(literal 1 binary64)) y)) (*.f64 y y))) |
#s(approx (+ (* (* z y) -1/2) 1) (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) z) (/.f64 #s(literal 1 binary64) y)) y))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (sin.f64 y) x)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x)) |
#s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 (/.f64 (fma.f64 z (cos.f64 y) (sin.f64 y)) x) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (+.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z y) x)) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 (+.f64 (/.f64 (+.f64 (sin.f64 y) x) z) (cos.f64 y)) z)) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) |
#s(approx (+ (* (cos y) z) (sin y)) (*.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) z)) |
#s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z)) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (-.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (+.f64 x y) z)) #s(literal -1 binary64)) z)) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 y z)) z)) |
#s(approx (+ (* (* z y) -1/2) 1) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z #s(literal 1 binary64))) |
#s(approx (+ z x) (*.f64 (-.f64 (/.f64 x z) #s(literal -1 binary64)) z)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (+.f64 (sin.f64 y) x) z)) (cos.f64 y)) z))) |
#s(approx (/ (+ (* (cos y) z) (sin y)) x) (neg.f64 (*.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 y)) x) (/.f64 (sin.f64 y) (*.f64 x z))) z))) |
#s(approx (+ (* (cos y) z) (sin y)) (neg.f64 (*.f64 (-.f64 (neg.f64 (/.f64 (sin.f64 y) z)) (cos.f64 y)) z))) |
#s(approx (+ z y) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 y z)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (neg.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal -1 binary64)) z))) |
#s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (neg.f64 (*.f64 (-.f64 (-.f64 (*.f64 (*.f64 y y) #s(literal 1/2 binary64)) (/.f64 (+.f64 x y) z)) #s(literal 1 binary64)) z))) |
#s(approx (* (+ (* (* z y) -1/2) 1) y) (neg.f64 (*.f64 (-.f64 (*.f64 (*.f64 y y) #s(literal 1/2 binary64)) (/.f64 y z)) z))) |
#s(approx (+ (* (* z y) -1/2) 1) (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) y) (/.f64 #s(literal 1 binary64) z)) z))) |
#s(approx (+ z x) (neg.f64 (*.f64 (-.f64 #s(literal -1 binary64) (/.f64 x z)) z))) |
Compiled 2 931 to 1 412 computations (51.8% saved)
23 alts after pruning (18 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 259 | 13 | 272 |
| Fresh | 5 | 5 | 10 |
| Picked | 3 | 2 | 5 |
| Done | 1 | 3 | 4 |
| Total | 268 | 23 | 291 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 99.9% | (fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
| 73.1% | (fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) | |
| 73.1% | (+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) | |
| 55.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) z (sin.f64 y))) | |
| 20.1% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) | |
| ✓ | 64.5% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
| 40.0% | #s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) | |
| 2.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) | |
| 8.8% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) | |
| ✓ | 27.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
| 20.0% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) | |
| 27.7% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) | |
| ✓ | 21.9% | #s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
| 76.6% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) | |
| 81.2% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x)) | |
| 56.4% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (/.f64 (fma.f64 (sin.f64 y) x (*.f64 (*.f64 x z) (cos.f64 y))) (*.f64 (*.f64 x z) x)) z)) x)) | |
| 46.4% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) | |
| 86.8% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) x)) z)) x)) | |
| 61.9% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) | |
| ✓ | 60.7% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
| 43.4% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) | |
| 36.2% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) | |
| 18.0% | #s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
Compiled 771 to 566 computations (26.6% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
(+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
(+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x (/.f64 (fma.f64 (cos.f64 y) z (sin.f64 y)) x) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 (+.f64 (/.f64 (sin.f64 y) z) (cos.f64 y)) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (+.f64 (/.f64 (sin.f64 y) (*.f64 x z)) (/.f64 (cos.f64 y) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (fma.f64 (cos.f64 y) (/.f64 #s(literal 1 binary64) x) (/.f64 (sin.f64 y) (*.f64 x z))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 (/.f64 (fma.f64 (sin.f64 y) x (*.f64 (*.f64 x z) (cos.f64 y))) (*.f64 (*.f64 x z) x)) z)) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) z (sin.f64 y))) |
| Outputs |
|---|
(fma.f64 (cos.f64 y) z (+.f64 (sin.f64 y) x)) |
4 calls:
| 15.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 14.0ms | y |
| 11.0ms | x |
| 11.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.9% | 1 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 99.9% | 1 | x |
| 99.9% | 1 | y |
| 99.9% | 1 | z |
Compiled 11 to 17 computations (-54.5% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
(+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (cos.f64 y) z (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
4 calls:
| 13.0ms | z |
| 12.0ms | x |
| 9.0ms | y |
| 9.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 94.6% | 4 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 96.7% | 3 | x |
| 90.0% | 4 | y |
| 96.4% | 4 | z |
Compiled 11 to 17 computations (-54.5% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
(+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (/.f64 (*.f64 z (cos.f64 y)) x)) x)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
2 calls:
| 13.0ms | x |
| 9.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 96.4% | 4 | z |
| 88.1% | 3 | x |
Compiled 2 to 6 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
(+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) |
| Outputs |
|---|
(+.f64 (+.f64 x #s(approx (sin y) y)) (*.f64 z (cos.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
2 calls:
| 9.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 9.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 88.1% | 3 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 90.8% | 3 | z |
Compiled 9 to 11 computations (-22.2% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
| Outputs |
|---|
(fma.f64 (cos.f64 y) z #s(approx (+ (sin y) x) (+.f64 x y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
1 calls:
| 17.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 90.8% | 3 | z |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
(+.f64 (+.f64 x (sin.f64 y)) #s(approx (* z (cos y)) z)) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
(+.f64 (+.f64 (sin.f64 y) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
1 calls:
| 8.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 90.1% | 3 | z |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (cos y) #s(literal 1 binary64)) z (sin.f64 y))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (*.f64 z (cos.f64 y))) |
4 calls:
| 63.0ms | y |
| 8.0ms | x |
| 8.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 8.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 80.9% | 5 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 77.7% | 3 | x |
| 81.4% | 4 | y |
| 86.1% | 5 | z |
Compiled 11 to 17 computations (-54.5% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 (sin.f64 y) x)) |
2 calls:
| 51.0ms | z |
| 7.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 79.3% | 3 | y |
| 76.9% | 3 | z |
Compiled 2 to 6 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (sin.f64 y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
3 calls:
| 11.0ms | y |
| 9.0ms | x |
| 7.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| Accuracy | Segments | Branch |
|---|---|---|
| 72.9% | 4 | x |
| 80.3% | 5 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 71.5% | 3 | y |
Compiled 10 to 14 computations (-40% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (fma.f64 (fma.f64 (/.f64 y x) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (*.f64 x z))) y (/.f64 #s(literal 1 binary64) x))) z)) x)) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
3 calls:
| 9.0ms | y |
| 7.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 7.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.5% | 3 | y |
| 67.8% | 3 | z |
| 71.4% | 3 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
Compiled 10 to 14 computations (-40% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
(+.f64 (+.f64 #s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y)) #s(approx (* z (cos y)) z)) x) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) y (*.f64 #s(literal -1/2 binary64) z)) y #s(literal 1 binary64)) y z))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
(+.f64 (+.f64 x #s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))) #s(approx (* z (cos y)) z)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
1 calls:
| 6.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.4% | 3 | y |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
3 calls:
| 15.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 11.0ms | y |
| 6.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.2% | 3 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 71.0% | 3 | x |
| 71.3% | 3 | y |
Compiled 10 to 14 computations (-40% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z (+.f64 x y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
1 calls:
| 5.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.3% | 3 | y |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 y z) #s(literal -1 binary64)) z)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) #s(approx (+ z y) (*.f64 (-.f64 (/.f64 z y) #s(literal -1 binary64)) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) #s(approx (* (+ (* (* z y) -1/2) 1) y) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) y)))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (*.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (+ (* (* z y) -1/2) 1) y) (+ z x)) (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/2 binary64) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y #s(approx (+ z x) z))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (fma.f64 x #s(approx (/ (+ (* (cos y) z) (sin y)) x) (*.f64 #s(approx (+ (/ (sin y) (* x z)) (/ (cos y) x)) (/.f64 #s(literal 1 binary64) x)) z)) x)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) #s(approx (+ (sin y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y x))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) z #s(approx (+ x y) y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 (fma.f64 (*.f64 z y) #s(literal -1/2 binary64) #s(literal 1 binary64)) y #s(approx (+ z x) z))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (fma.f64 #s(approx (+ (* (* z y) -1/2) 1) (*.f64 (*.f64 z y) #s(literal -1/2 binary64))) y (+.f64 z x))) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 (+.f64 z y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
1 calls:
| 15.0ms | y |
| Accuracy | Segments | Branch |
|---|---|---|
| 71.3% | 3 | y |
Compiled 1 to 3 computations (-200% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) (+.f64 z x)) |
3 calls:
| 2.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 2.0ms | y |
| 2.0ms | x |
| Accuracy | Segments | Branch |
|---|---|---|
| 70.4% | 3 | x |
| 69.0% | 3 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 64.5% | 1 | y |
Compiled 10 to 14 computations (-40% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
| Outputs |
|---|
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ (* (cos y) z) (sin y)) (+.f64 z y))) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
4 calls:
| 7.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 2.0ms | y |
| 2.0ms | x |
| 2.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 43.4% | 1 | y |
| 50.5% | 3 | z |
| 43.4% | 1 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 53.3% | 3 | x |
Compiled 11 to 17 computations (-54.5% saved)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
#s(approx (+ (* (cos y) z) (+ (sin y) x)) (+.f64 #s(approx (sin y) y) x)) |
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
2 calls:
| 1.0ms | x |
| 1.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 50.5% | 3 | z |
| 48.4% | 3 | x |
Compiled 2 to 6 computations (-200% saved)
Total -0.0b remaining (-0%)
Threshold costs -0b (-0%)
| Inputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
| Outputs |
|---|
#s(approx (+ (+ x (sin y)) (* z (cos y))) #s(approx (+ z x) z)) |
4 calls:
| 1.0ms | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 1.0ms | y |
| 1.0ms | x |
| 1.0ms | z |
| Accuracy | Segments | Branch |
|---|---|---|
| 21.9% | 1 | y |
| 21.9% | 1 | (+.f64 (+.f64 x (sin.f64 y)) (*.f64 z (cos.f64 y))) |
| 21.9% | 1 | x |
| 21.9% | 1 | z |
Compiled 11 to 17 computations (-54.5% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 1.3201425877736961e-21 | 8.527977337160762e-20 |
| 19.0ms | -0.0004446620280687956 | -8.074515790663186e-14 |
| 21.0ms | 272× | 0 | valid |
Compiled 539 to 524 computations (2.8% saved)
ival-sin: 7.0ms (47.4% of total)ival-cos: 5.0ms (33.9% of total)ival-add!: 1.0ms (6.8% of total)ival-mult!: 1.0ms (6.8% of total)adjust: 0.0ms (0% of total)| 3× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 2.886107138306181e+188 | 1.102960808825853e+191 |
| 53.0ms | 8.659442880368128e-13 | 7.212674770760165e-5 |
| 9.0ms | -1100704026.2706373 | -450529726.2564591 |
| 62.0ms | 352× | 0 | valid |
Compiled 628 to 608 computations (3.2% saved)
ival-add!: 38.0ms (70.1% of total)ival-sin: 8.0ms (14.7% of total)ival-cos: 7.0ms (12.9% of total)ival-mult!: 2.0ms (3.7% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 12.0ms | 8.973440916156178e+132 | 1.7709172819984764e+135 |
| 26.0ms | -3.406329805180476e+148 | -7.268885237212871e+142 |
| 19.0ms | 256× | 0 | valid |
Compiled 314 to 348 computations (-10.8% saved)
ival-sin: 6.0ms (46.7% of total)ival-cos: 5.0ms (38.9% of total)ival-add!: 1.0ms (7.8% of total)ival-mult!: 1.0ms (7.8% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 1.0ms | 8.973440916156178e+132 | 1.7709172819984764e+135 |
| 1.0ms | -3.406329805180476e+148 | -7.268885237212871e+142 |
Compiled 314 to 348 computations (-10.8% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 8.973440916156178e+132 | 1.7709172819984764e+135 |
| 15.0ms | -3.3521285638595353e+152 | -7.717704708732116e+150 |
| 11.0ms | 112× | 0 | valid |
Compiled 292 to 322 computations (-10.3% saved)
ival-sin: 3.0ms (49.8% of total)ival-cos: 2.0ms (33.2% of total)ival-add!: 1.0ms (16.6% of total)ival-mult!: 1.0ms (16.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 |
|---|---|---|
| 0.0ms | 8.973440916156178e+132 | 1.7709172819984764e+135 |
| 12.0ms | 4.2318614586647865e-58 | 4.79848037310066e-56 |
| 6.0ms | -1908050072.0593045 | -1100704026.2706373 |
| 1.0ms | -3.3521285638595353e+152 | -7.717704708732116e+150 |
| 12.0ms | 176× | 0 | valid |
Compiled 537 to 589 computations (-9.7% saved)
ival-sin: 4.0ms (49% of total)ival-cos: 3.0ms (36.7% of total)ival-add!: 1.0ms (12.2% of total)ival-mult!: 1.0ms (12.2% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 11.0ms | 3.720498228790938e-44 | 3.701075761507498e-38 |
| 9.0ms | -4.97777207386687e-5 | -3.1303900906721405e-6 |
| 11.0ms | 240× | 0 | valid |
Compiled 402 to 434 computations (-8% saved)
ival-cos: 2.0ms (34.7% of total)ival-sin: 2.0ms (34.7% of total)ival-add!: 1.0ms (17.4% of total)ival-mult!: 1.0ms (17.4% of total)adjust: 0.0ms (0% of total)| 4× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.9959845607599955 | 2113.779278759776 |
| 0.0ms | 8.659442880368128e-13 | 0.01306068281837421 |
| 0.0ms | -0.2303389108012892 | -0.0035121041307001758 |
| 0.0ms | -1908050072.0181592 | -0.9994513424918364 |
Compiled 11 to 14 computations (-27.3% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 5897.088658204832 | 47663.18576533148 |
| 30.0ms | -10700.700841240348 | -4930.360659566764 |
| 36.0ms | 176× | 0 | valid |
Compiled 309 to 333 computations (-7.8% saved)
ival-sin: 25.0ms (78.4% of total)ival-cos: 5.0ms (15.7% of total)ival-add!: 1.0ms (3.1% of total)ival-mult!: 1.0ms (3.1% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 5897.088658204832 | 47663.18576533148 |
| 7.0ms | -10700.700841240348 | -4930.360659566764 |
| 15.0ms | 128× | 0 | valid |
Compiled 287 to 311 computations (-8.4% saved)
ival-cos: 6.0ms (51% of total)ival-sin: 4.0ms (34% of total)ival-add!: 1.0ms (8.5% of total)ival-mult!: 1.0ms (8.5% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 20.0ms | 5.805781595916154e-16 | 5897.088658204832 |
| 21.0ms | -16339050552.768764 | -10700.700841240348 |
| 30.0ms | 304× | 0 | valid |
Compiled 487 to 527 computations (-8.2% saved)
ival-sin: 10.0ms (44.8% of total)ival-cos: 9.0ms (40.4% of total)ival-add!: 1.0ms (4.5% of total)ival-mult!: 1.0ms (4.5% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 1.0ms | 5.805781595916154e-16 | 5897.088658204832 |
| 1.0ms | -16339050552.768764 | -10700.700841240348 |
Compiled 487 to 527 computations (-8.2% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 11.0ms | 5.805781595916154e-16 | 5897.088658204832 |
| 33.0ms | -7.304020629557333e+46 | -3.6236433640983e+41 |
| 35.0ms | 224× | 0 | valid |
Compiled 411 to 451 computations (-9.7% saved)
ival-mult!: 14.0ms (47.7% of total)ival-sin: 8.0ms (27.3% of total)ival-cos: 6.0ms (20.5% of total)ival-add!: 1.0ms (3.4% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 13.0ms | 6.17559464150404e-156 | 2.4921551867894353e-154 |
| 26.0ms | -1.2094717943865104e-142 | -2.0509123540789066e-156 |
| 21.0ms | 272× | 0 | valid |
Compiled 437 to 439 computations (-0.5% saved)
ival-sin: 6.0ms (42.3% of total)ival-cos: 5.0ms (35.3% of total)ival-add!: 1.0ms (7.1% of total)ival-mult!: 1.0ms (7.1% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 135.0ms | 1.4281414726447286e+50 | 3.9578008639191694e+50 |
| 16.0ms | -4.7107234241048325e+55 | -1.879591387826421e+48 |
| 143.0ms | 224× | 0 | valid |
Compiled 390 to 378 computations (3.1% saved)
ival-sin: 131.0ms (95.1% of total)ival-cos: 4.0ms (2.9% of total)ival-add!: 1.0ms (0.7% of total)ival-mult!: 1.0ms (0.7% of total)adjust: 0.0ms (0% of total)| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 14.0ms | 4.846286690475286e+136 | 1.5453033382935793e+140 |
| 12.0ms | -8.238593937416187e+164 | -3.152558698014754e+163 |
| 17.0ms | 240× | 0 | valid |
Compiled 357 to 374 computations (-4.8% saved)
ival-sin: 5.0ms (42.4% of total)ival-cos: 4.0ms (34% of total)ival-add!: 1.0ms (8.5% of total)ival-mult!: 1.0ms (8.5% of total)adjust: 0.0ms (0% of total)| 1× | fuel |
Compiled 253 to 167 computations (34% saved)
Compiled 261 to 175 computations (33% saved)
Loading profile data...