
Time bar (total: 1.9s)
| 1× | search |
| Probability | Valid | Unknown | Precondition | Infinite | Domain | Can't | Iter |
|---|---|---|---|---|---|---|---|
| 0% | 0% | 99.6% | 0.4% | 0% | 0% | 0% | 0 |
| 100% | 99.6% | 0% | 0.4% | 0% | 0% | 0% | 1 |
Compiled 4 to 4 computations (0% saved)
| 492.0ms | 8 256× | 0 | valid |
ival-asinh: 237.0ms (99.6% of total)adjust: 1.0ms (0.4% of total)Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 5 | 9 |
| 1× | saturated |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 38.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
Compiled 18 to 18 computations (0% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) |
(+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(fabs.f32 x) |
x |
(sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))) |
(+.f32 (*.f32 x x) #s(literal 1 binary32)) |
(*.f32 x x) |
#s(literal 1 binary32) |
| Outputs |
|---|
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (* x x) #s(hole binary32 (pow x 2))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | 0 | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) x (sqrt (+ (* x x) 1)) (+ (* x x) 1) (* x x) 1) |
| 2.0ms | x | @ | -inf | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) x (sqrt (+ (* x x) 1)) (+ (* x x) 1) (* x x) 1) |
| 2.0ms | x | @ | inf | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) x (sqrt (+ (* x x) 1)) (+ (* x x) 1) (* x x) 1) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 224 | 1095 |
| 0 | 235 | 890 |
| 1 | 1342 | 753 |
| 0 | 8446 | 704 |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) |
(+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(fabs.f32 x) |
x |
(sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))) |
(+.f32 (*.f32 x x) #s(literal 1 binary32)) |
(*.f32 x x) |
#s(literal 1 binary32) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (* x x) #s(hole binary32 (pow x 2))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
| Outputs |
|---|
(copysign.f32 (asinh.f32 x) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(-.f32 (log.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (log.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (log.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (log.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(asinh.f32 x) |
(/.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x)) (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(/.f32 (fma.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)) (*.f32 (*.f32 x x) x)) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (neg.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(/.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32))) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(/.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) |
(-.f32 (/.f32 (*.f32 x x) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) (/.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(+.f32 (/.f32 (*.f32 (*.f32 x x) x) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x) |
(+.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
x |
x |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(/.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (sqrt.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (sqrt.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (sqrt.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (sqrt.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (sqrt.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (+.f32 (exp.f32 (asinh.f32 x)) (exp.f32 (neg.f32 (asinh.f32 x)))) #s(literal 2 binary32)) |
(/.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal -1/2 binary32))) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1/2 binary32)) |
(exp.f32 (*.f32 (log.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32))) |
(cosh.f32 (neg.f32 (asinh.f32 x))) |
(cosh.f32 (asinh.f32 (neg.f32 x))) |
(cosh.f32 (asinh.f32 x)) |
(*.f32 (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (neg.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (neg.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (neg.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) (-.f32 #s(literal 1 binary32) (*.f32 x x))) |
(/.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) |
(/.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x))) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) |
(/.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) |
(-.f32 (/.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) (*.f32 x x))) (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(-.f32 (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) (/.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(fma.f32 (neg.f32 (neg.f32 x)) (neg.f32 (neg.f32 x)) #s(literal 1 binary32)) |
(fma.f32 (neg.f32 x) (neg.f32 x) #s(literal 1 binary32)) |
(fma.f32 x x #s(literal 1 binary32)) |
(pow.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32)) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 2 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1 binary32)) |
(+.f32 (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) (/.f32 (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(+.f32 (/.f32 (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) (/.f32 #s(literal 1 binary32) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(+.f32 (*.f32 x x) #s(literal 1 binary32)) |
(+.f32 #s(literal 1 binary32) (*.f32 x x)) |
(*.f32 (neg.f32 (neg.f32 x)) (neg.f32 (neg.f32 x))) |
(*.f32 (neg.f32 x) (neg.f32 x)) |
(*.f32 x x) |
(sqrt.f32 (*.f32 (*.f32 x x) (*.f32 x x))) |
(pow.f32 (neg.f32 x) #s(literal 2 binary32)) |
(pow.f32 (*.f32 x x) #s(literal 1 binary32)) |
(pow.f32 x #s(literal 2 binary32)) |
(fabs.f32 (*.f32 (neg.f32 x) x)) |
(fabs.f32 (*.f32 x (neg.f32 x))) |
(fabs.f32 (*.f32 x x)) |
(+.f32 (cosh.f32 (*.f32 (log.f32 x) #s(literal 2 binary32))) (sinh.f32 (*.f32 (log.f32 x) #s(literal 2 binary32)))) |
(exp.f32 (*.f32 (log.f32 x) #s(literal 2 binary32))) |
#s(literal 1 binary32) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (+.f32 #s(literal 1 binary32) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (/.f32 (*.f32 x x) (+.f32 #s(literal 1 binary32) x)) #s(literal 1/2 binary32) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (fma.f32 (*.f32 #s(literal -1/24 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (fma.f32 (fma.f32 (*.f32 #s(literal 1/720 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 45 binary32) (+.f32 #s(literal 1 binary32) x)) (+.f32 (/.f32 #s(literal 30 binary32) (*.f32 (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x)) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 45 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))))) (*.f32 (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) #s(literal -1/24 binary32))) (*.f32 x x) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) #s(literal 1 binary32)) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (+ (* x x) 1) #s(literal 1 binary32)) |
#s(approx (+ (* x x) 1) (fma.f32 x x #s(literal 1 binary32))) |
#s(approx (* x x) (*.f32 x x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (/.f32 x x) (log.f32 x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (log.f32 x) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) (*.f32 (*.f32 x x) x)) #s(literal 1/6 binary32) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x))) (log.f32 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (+.f32 (/.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ (* x x) 1) (*.f32 x x)) |
#s(approx (+ (* x x) 1) (fma.f32 (*.f32 x x) #s(literal 1 binary32) #s(literal 1 binary32))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (neg.f32 (neg.f32 (log.f32 (neg.f32 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (/.f32 (neg.f32 x) x) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (neg.f32 (/.f32 (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) x) #s(literal -1/2 binary32) x) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (neg.f32 (/.f32 (+.f32 x (neg.f32 (/.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) x) #s(literal -1/6 binary32) (*.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) #s(literal 1/2 binary32))) x))) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 (*.f32 (+.f32 (/.f32 (neg.f32 x) x) #s(literal 1 binary32)) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 (*.f32 (+.f32 (neg.f32 (/.f32 (-.f32 x (/.f32 #s(literal 1/2 binary32) x)) x)) #s(literal 1 binary32)) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (neg.f32 x) (+.f32 (neg.f32 (/.f32 (+.f32 (neg.f32 (/.f32 (-.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x)) x) x)) #s(literal 1 binary32)))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x))) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (neg.f32 x) (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))))) |
Compiled 1 265 to 620 computations (51% saved)
8 alts after pruning (8 fresh and 0 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 97 | 8 | 105 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 0 | 1 |
| Done | 0 | 0 | 0 |
| Total | 98 | 8 | 106 |
| Status | Accuracy | Program |
|---|---|---|
| 27.5% | (copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) | |
| ▶ | 38.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
| ▶ | 27.5% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
| 35.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) x))) x) | |
| ▶ | 23.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
| 12.3% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) | |
| ▶ | 16.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
| ▶ | 99.6% | (copysign.f32 (asinh.f32 x) x) |
Compiled 144 to 144 computations (0% saved)
| Inputs |
|---|
(copysign.f32 (asinh.f32 x) x) |
(asinh.f32 x) |
x |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x)) |
(+.f32 #s(literal 1 binary32) x) |
#s(literal 1 binary32) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
(log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) |
(+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) |
(fabs.f32 x) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
(neg.f32 x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(fma.f32 x x #s(literal 1 binary32)) |
| Outputs |
|---|
#s(approx (copysign (asinh x) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (asinh x) #s(hole binary32 x)) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (+ 1 x) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (neg x) #s(hole binary32 (* -1 x))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (+ 1 x) #s(hole binary32 x)) |
#s(approx (+ 1 x) #s(hole binary32 (* x (+ 1 (/ 1 x))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (copysign (asinh x) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 2.0ms | x | @ | -inf | ((copysign (asinh x) x) (asinh x) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (+ 1 x) 1 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) (sqrt (+ (* x x) 1)) (neg x) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (sqrt (+ (* x x) 1)) (+ (* x x) 1)) |
| 2.0ms | x | @ | inf | ((copysign (asinh x) x) (asinh x) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (+ 1 x) 1 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) (sqrt (+ (* x x) 1)) (neg x) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (sqrt (+ (* x x) 1)) (+ (* x x) 1)) |
| 2.0ms | x | @ | 0 | ((copysign (asinh x) x) (asinh x) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (+ 1 x) 1 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (fabs x) (sqrt (+ (* x x) 1)) (neg x) (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (sqrt (+ (* x x) 1)) (+ (* x x) 1)) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 304 | 1464 |
| 0 | 323 | 1213 |
| 1 | 1790 | 1072 |
| 0 | 8499 | 1023 |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(copysign.f32 (asinh.f32 x) x) |
(asinh.f32 x) |
x |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x)) |
(+.f32 #s(literal 1 binary32) x) |
#s(literal 1 binary32) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
(log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) |
(+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) |
(fabs.f32 x) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
(neg.f32 x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
(log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(fma.f32 x x #s(literal 1 binary32)) |
#s(approx (copysign (asinh x) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (asinh x) #s(hole binary32 x)) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (asinh x) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (+ 1 x) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (neg x) #s(hole binary32 (* -1 x))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (+ 1 x) #s(hole binary32 x)) |
#s(approx (+ 1 x) #s(hole binary32 (* x (+ 1 (/ 1 x))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (copysign (asinh x) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (asinh x) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (asinh x) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
| Outputs |
|---|
(copysign.f32 (asinh.f32 x) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(-.f32 (log.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(-.f32 (log.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x)))) (log.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(-.f32 (log.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (log.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (log.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (log.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(asinh.f32 x) |
x |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x)) |
(*.f32 (+.f32 (/.f32 #s(literal 1 binary32) x) #s(literal 1 binary32)) x) |
(*.f32 x (+.f32 (/.f32 #s(literal 1 binary32) x) #s(literal 1 binary32))) |
(/.f32 (fma.f32 (*.f32 x x) x (pow.f32 (*.f32 x (/.f32 #s(literal 1 binary32) x)) #s(literal 3 binary32))) (fma.f32 x x (-.f32 (*.f32 (*.f32 x (/.f32 #s(literal 1 binary32) x)) (*.f32 x (/.f32 #s(literal 1 binary32) x))) (*.f32 x (*.f32 x (/.f32 #s(literal 1 binary32) x)))))) |
(/.f32 (fma.f32 (*.f32 x x) x #s(literal 1 binary32)) (fma.f32 x x (-.f32 #s(literal 1 binary32) x))) |
(/.f32 (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x))) (neg.f32 (-.f32 #s(literal 1 binary32) x))) |
(/.f32 (neg.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) x))) (neg.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) x)))) |
(/.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)) (-.f32 #s(literal 1 binary32) x)) |
(/.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) x)) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) x))) |
(/.f32 #s(literal 1 binary32) (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) x))) |
(-.f32 (/.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) x)) (/.f32 (*.f32 x x) (-.f32 #s(literal 1 binary32) x))) |
(pow.f32 (+.f32 #s(literal 1 binary32) x) #s(literal 1 binary32)) |
(+.f32 (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) x))) (/.f32 (*.f32 (*.f32 x x) x) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) x)))) |
(+.f32 #s(literal 1 binary32) x) |
(+.f32 x (*.f32 x (/.f32 #s(literal 1 binary32) x))) |
(+.f32 x #s(literal 1 binary32)) |
(exp.f32 (*.f32 (log.f32 (+.f32 #s(literal 1 binary32) x)) #s(literal 1 binary32))) |
#s(literal 1 binary32) |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) x)) x) |
(log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) x)) |
(-.f32 (log.f32 (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) (log.f32 (-.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) |
(-.f32 (log.f32 (fma.f32 (*.f32 x x) x (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) (log.f32 (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))))) |
(/.f32 (fma.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) (*.f32 (*.f32 x x) x)) (fma.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) x)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) (neg.f32 (-.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 x x) x (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) (neg.f32 (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))))) |
(/.f32 (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) (-.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) |
(/.f32 (fma.f32 (*.f32 x x) x (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))))) |
(-.f32 (/.f32 (*.f32 x x) (-.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) (/.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (-.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))) |
(+.f32 (/.f32 (*.f32 (*.f32 x x) x) (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))))) (/.f32 (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))))))) |
(+.f32 #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) x) |
(+.f32 x #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x))) |
x |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
(*.f32 #s(literal -1 binary32) x) |
(*.f32 x #s(literal -1 binary32)) |
(neg.f32 x) |
(copysign.f32 (asinh.f32 x) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(-.f32 (log.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(-.f32 (log.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x)))) (log.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(-.f32 (log.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (log.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (log.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (log.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(asinh.f32 x) |
(/.f32 (fma.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)) (*.f32 (*.f32 x x) x)) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (neg.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(/.f32 (neg.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(/.f32 (neg.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (neg.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x)))) (neg.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(/.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x)) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))) |
(/.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32))) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(/.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x))) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))))) |
(/.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) |
(-.f32 (/.f32 (*.f32 x x) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) (/.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (/.f32 (fma.f32 x x #s(literal 1 binary32)) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))) (/.f32 (*.f32 x x) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(-.f32 (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))))) (/.f32 (*.f32 (*.f32 x x) (neg.f32 x)) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)) |
(+.f32 (/.f32 (*.f32 (*.f32 x x) x) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x) |
(+.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(/.f32 (sqrt.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (sqrt.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (sqrt.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (sqrt.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (sqrt.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (+.f32 (exp.f32 (asinh.f32 x)) (exp.f32 (neg.f32 (asinh.f32 x)))) #s(literal 2 binary32)) |
(/.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal -1/2 binary32))) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1/2 binary32)) |
(exp.f32 (*.f32 (log.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32))) |
(cosh.f32 (neg.f32 (asinh.f32 x))) |
(cosh.f32 (asinh.f32 (neg.f32 x))) |
(cosh.f32 (asinh.f32 x)) |
(*.f32 (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (neg.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (neg.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (neg.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (neg.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) |
(/.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) (-.f32 #s(literal 1 binary32) (*.f32 x x))) |
(/.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) |
(/.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) |
(-.f32 (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) (/.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(-.f32 (/.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) (*.f32 x x))) (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(fma.f32 (neg.f32 (neg.f32 x)) (neg.f32 (neg.f32 x)) #s(literal 1 binary32)) |
(fma.f32 (neg.f32 x) (neg.f32 x) #s(literal 1 binary32)) |
(fma.f32 x x #s(literal 1 binary32)) |
(pow.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32)) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 2 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1 binary32)) |
(+.f32 (/.f32 (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) (/.f32 #s(literal 1 binary32) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(+.f32 (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) (/.f32 (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(+.f32 (*.f32 x x) #s(literal 1 binary32)) |
(+.f32 #s(literal 1 binary32) (*.f32 x x)) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (*.f32 (fma.f32 #s(literal -1/6 binary32) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (*.f32 (fma.f32 (-.f32 (*.f32 #s(literal 3/40 binary32) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (*.f32 (fma.f32 (-.f32 (*.f32 (fma.f32 #s(literal -5/112 binary32) (*.f32 x x) #s(literal 3/40 binary32)) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (+.f32 #s(literal 1 binary32) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (/.f32 (*.f32 x x) (+.f32 #s(literal 1 binary32) x)) #s(literal 1/2 binary32) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (fma.f32 (*.f32 #s(literal -1/24 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (fma.f32 (fma.f32 (fma.f32 (*.f32 #s(literal 1/720 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 45 binary32) (+.f32 #s(literal 1 binary32) x)) (+.f32 (/.f32 #s(literal 30 binary32) (*.f32 (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x)) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 45 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))))) (*.f32 (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) #s(literal -1/24 binary32))) (*.f32 x x) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ 1 x) #s(literal 1 binary32)) |
#s(approx (sqrt (+ (* x x) 1)) #s(literal 1 binary32)) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (neg x) (neg.f32 x)) |
#s(approx (+ (* x x) 1) #s(literal 1 binary32)) |
#s(approx (+ (* x x) 1) (fma.f32 x x #s(literal 1 binary32))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (log.f32 (*.f32 x #s(literal 2 binary32))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (-.f32 (+.f32 (log.f32 (*.f32 x #s(literal 2 binary32))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (-.f32 (+.f32 (log.f32 (*.f32 x #s(literal 2 binary32))) (+.f32 (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (/.f32 x x) (log.f32 x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (log.f32 x) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) (*.f32 (*.f32 x x) x)) #s(literal 1/6 binary32) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x))) (log.f32 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (+.f32 (/.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ 1 x) x) |
#s(approx (+ 1 x) (+.f32 #s(literal 1 binary32) x)) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ (* x x) 1) (*.f32 x x)) |
#s(approx (+ (* x x) 1) (fma.f32 (*.f32 x x) #s(literal 1 binary32) #s(literal 1 binary32))) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (-.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (-.f32 (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (neg.f32 (neg.f32 (log.f32 (neg.f32 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (/.f32 (neg.f32 x) x) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (neg.f32 (/.f32 (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) x) #s(literal -1/2 binary32) x) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+.f32 (neg.f32 (/.f32 (+.f32 x (neg.f32 (/.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) x) #s(literal -1/6 binary32) (+.f32 #s(literal 1/2 binary32) (*.f32 (neg.f32 (*.f32 x x)) #s(literal 1/2 binary32)))) x))) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 (*.f32 (+.f32 (/.f32 (neg.f32 x) x) #s(literal 1 binary32)) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 (*.f32 (+.f32 (neg.f32 (/.f32 (-.f32 x (/.f32 #s(literal 1/2 binary32) x)) x)) #s(literal 1 binary32)) x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (*.f32 (neg.f32 x) (+.f32 (neg.f32 (/.f32 (+.f32 (neg.f32 (/.f32 (-.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x)) x) x)) #s(literal 1 binary32)))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x))) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (neg.f32 x) (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))))) |
Compiled 1 949 to 787 computations (59.6% saved)
9 alts after pruning (4 fresh and 5 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 134 | 2 | 136 |
| Fresh | 1 | 2 | 3 |
| Picked | 0 | 5 | 5 |
| Done | 0 | 0 | 0 |
| Total | 135 | 9 | 144 |
| Status | Accuracy | Program |
|---|---|---|
| ▶ | 27.5% | (copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
| ✓ | 38.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
| ✓ | 27.5% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
| ✓ | 23.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
| ▶ | 12.3% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
| ✓ | 16.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
| ✓ | 99.6% | (copysign.f32 (asinh.f32 x) x) |
| ▶ | 32.9% | (copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) x) |
| ▶ | 50.4% | (copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
Compiled 85 to 85 computations (0% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) |
x |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) x) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) |
(log.f32 (*.f32 x #s(literal 2 binary32))) |
(*.f32 x #s(literal 2 binary32)) |
#s(literal 2 binary32) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x)) |
(neg.f32 x) |
(copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(fma.f32 x x #s(literal 1 binary32)) |
#s(literal 1 binary32) |
| Outputs |
|---|
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log 2) (log x)))) |
#s(approx (* x 2) #s(hole binary32 (* 2 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (neg x) #s(hole binary32 (* -1 x))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 1)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* 1/2 x)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* x (+ 1/2 (* -1/8 (pow x 2))))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* 2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (+ 2 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log -2) (* -1 (log (/ -1 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (/ -1/2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (+ (* 1/8 (/ 1 (pow x 2))) (* 5/128 (/ 1 (pow x 6))))) x)))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 24.0ms | x | @ | 0 | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log (* x 2)) (* x 2) 2 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (neg x) (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1)) (+ (* x x) 1) 1) |
| 21.0ms | x | @ | -inf | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log (* x 2)) (* x 2) 2 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (neg x) (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1)) (+ (* x x) 1) 1) |
| 20.0ms | x | @ | inf | ((copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log (* x 2)) (* x 2) 2 (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (+ (fabs x) (sqrt (+ (* x x) 1))) (neg x) (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1)) (+ (* x x) 1) 1) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 347 | 1780 |
| 0 | 361 | 1492 |
| 1 | 2030 | 1254 |
| 0 | 9762 | 1196 |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) |
x |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) x) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) |
(log.f32 (*.f32 x #s(literal 2 binary32))) |
(*.f32 x #s(literal 2 binary32)) |
#s(literal 2 binary32) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x)) |
(neg.f32 x) |
(copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(fma.f32 x x #s(literal 1 binary32)) |
#s(literal 1 binary32) |
#s(approx (copysign (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) #s(hole binary32 (copysign (log (+ (fabs x) (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (log (+ 1 (fabs x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* 1/2 (/ (pow x 2) (+ 1 (fabs x))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* -1/24 (* (pow x 2) (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2)))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (log (+ 1 (fabs x))) (* (pow x 2) (+ (* (pow x 2) (+ (* -1/24 (+ (* 3 (/ 1 (+ 1 (fabs x)))) (* 3 (/ 1 (pow (+ 1 (fabs x)) 2))))) (* 1/720 (* (pow x 2) (+ (* 45 (/ 1 (+ 1 (fabs x)))) (+ (* 45 (/ 1 (pow (+ 1 (fabs x)) 2))) (* 30 (/ 1 (pow (+ 1 (fabs x)) 3))))))))) (* 1/2 (/ 1 (+ 1 (fabs x))))))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log 2) (log x)))) |
#s(approx (* x 2) #s(hole binary32 (* 2 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (fabs x)))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* 1/2 (pow x 2)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2)))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (+ 1 (+ (fabs x) (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8)))))))) |
#s(approx (neg x) #s(hole binary32 (* -1 x))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 1)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* 1/2 x)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* x (+ 1/2 (* -1/8 (pow x 2))))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 1)) |
#s(approx (+ (* x x) 1) #s(hole binary32 (+ 1 (pow x 2)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ 1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (/ (fabs x) x)))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ 1 x))) (+ (* 1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) (pow x 3))) (+ (* 1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) (pow x 2))) (/ (fabs x) x)))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 x)) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (/ (fabs x) x))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* x (- (+ 1 (+ (/ 1/2 (pow x 2)) (/ (fabs x) x))) (* 1/8 (/ 1 (pow x 4))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* 2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (+ 2 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (pow x 2))) |
#s(approx (+ (* x x) 1) #s(hole binary32 (* (pow x 2) (+ 1 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (* -1 (log (/ -1 x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (fabs x) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1/2 (/ (+ 1 (* -1 (pow (fabs x) 2))) x))) x))))) |
#s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) #s(hole binary32 (+ (* -1 (log (/ -1 x))) (* -1 (/ (+ (fabs x) (* -1 (/ (+ (* -1/6 (/ (+ (* -3 (fabs x)) (* 2 (pow (fabs x) 3))) x)) (* 1/2 (+ 1 (* -1 (pow (fabs x) 2))))) x))) x))))) |
#s(approx (log (* x 2)) #s(hole binary32 (+ (log -2) (* -1 (log (/ -1 x)))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 x))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (fabs x) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (- (fabs x) (* 1/2 (/ 1 x))) x))))))) |
#s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) #s(hole binary32 (* -1 (* x (+ 1 (* -1 (/ (+ (fabs x) (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x))) x))))))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (/ -1/2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (+ (* 1/8 (/ 1 (pow x 2))) (* 5/128 (/ 1 (pow x 6))))) x)))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
| Outputs |
|---|
(copysign.f32 #s(approx (log (+ (sqrt (+ (* x x) 1)) x)) x) x) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) x) |
x |
(copysign.f32 #s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (+.f32 x x))) x) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (+.f32 x x))) |
(log.f32 (+.f32 x x)) |
(/.f32 (+.f32 (pow.f32 (log.f32 x) #s(literal 3 binary32)) (pow.f32 (log.f32 #s(literal 2 binary32)) #s(literal 3 binary32))) (fma.f32 (log.f32 x) (log.f32 x) (-.f32 (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32))) (*.f32 (log.f32 x) (log.f32 #s(literal 2 binary32)))))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32))) (*.f32 (log.f32 x) (log.f32 x)))) (neg.f32 (log.f32 (/.f32 #s(literal 2 binary32) x)))) |
(/.f32 (neg.f32 (+.f32 (pow.f32 (log.f32 #s(literal 2 binary32)) #s(literal 3 binary32)) (pow.f32 (log.f32 x) #s(literal 3 binary32)))) (neg.f32 (fma.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32)) (-.f32 (*.f32 (log.f32 x) (log.f32 x)) (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 x)))))) |
(/.f32 (-.f32 (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32))) (*.f32 (log.f32 x) (log.f32 x))) (log.f32 (/.f32 #s(literal 2 binary32) x))) |
(/.f32 (+.f32 (pow.f32 (log.f32 #s(literal 2 binary32)) #s(literal 3 binary32)) (pow.f32 (log.f32 x) #s(literal 3 binary32))) (fma.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32)) (-.f32 (*.f32 (log.f32 x) (log.f32 x)) (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 x))))) |
(-.f32 (/.f32 (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32))) (log.f32 (/.f32 #s(literal 2 binary32) x))) (/.f32 (*.f32 (log.f32 x) (log.f32 x)) (log.f32 (/.f32 #s(literal 2 binary32) x)))) |
(-.f32 (log.f32 #s(literal 2 binary32)) (*.f32 #s(literal 1 binary32) (neg.f32 (log.f32 x)))) |
(fma.f32 (neg.f32 (log.f32 x)) #s(literal -1 binary32) (log.f32 #s(literal 2 binary32))) |
(fma.f32 #s(literal -1 binary32) (neg.f32 (log.f32 x)) (log.f32 #s(literal 2 binary32))) |
(+.f32 (/.f32 (pow.f32 (log.f32 #s(literal 2 binary32)) #s(literal 3 binary32)) (fma.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32)) (-.f32 (*.f32 (log.f32 x) (log.f32 x)) (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 x))))) (/.f32 (pow.f32 (log.f32 x) #s(literal 3 binary32)) (fma.f32 (log.f32 #s(literal 2 binary32)) (log.f32 #s(literal 2 binary32)) (-.f32 (*.f32 (log.f32 x) (log.f32 x)) (*.f32 (log.f32 #s(literal 2 binary32)) (log.f32 x)))))) |
(+.f32 (log.f32 x) (log.f32 #s(literal 2 binary32))) |
(+.f32 (log.f32 #s(literal 2 binary32)) (log.f32 x)) |
(*.f32 #s(literal 2 binary32) x) |
(*.f32 x #s(literal 2 binary32)) |
(/.f32 (*.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32)) (fma.f32 x x (-.f32 (*.f32 x x) (*.f32 x x)))) |
(+.f32 x x) |
#s(literal 2 binary32) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 x))) x) |
(log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 x)) |
(*.f32 #s(literal -1 binary32) x) |
(*.f32 x #s(literal -1 binary32)) |
(neg.f32 x) |
(copysign.f32 (asinh.f32 x) x) |
(log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(-.f32 (log.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (log.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (log.f32 (fma.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)) (*.f32 (*.f32 x x) x))) (log.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))))) |
(-.f32 (log.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (log.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(-.f32 (log.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (log.f32 (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))) |
(-.f32 (log.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(-.f32 (log.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x)))) (log.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(asinh.f32 x) |
(/.f32 (neg.f32 (fma.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)) (*.f32 (*.f32 x x) x))) (neg.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))))) (neg.f32 (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(/.f32 (neg.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (neg.f32 (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))) |
(/.f32 (neg.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x))) (neg.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x)))) (neg.f32 (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(/.f32 (neg.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(/.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x)) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))) |
(/.f32 (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x x)) (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) |
(/.f32 (-.f32 (*.f32 x x) (fma.f32 x x #s(literal 1 binary32))) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(/.f32 (-.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (*.f32 (*.f32 x x) (neg.f32 x))) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))))) |
(/.f32 (fma.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)) (*.f32 (*.f32 x x) x)) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)))) |
(/.f32 (fma.f32 (*.f32 x x) x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32)))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) |
(-.f32 (/.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) (/.f32 (*.f32 x x) (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))) |
(-.f32 (/.f32 (fma.f32 x x #s(literal 1 binary32)) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))) (/.f32 (*.f32 x x) (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))) |
(-.f32 (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))))) (/.f32 (*.f32 (*.f32 x x) (neg.f32 x)) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)))))) |
(-.f32 (/.f32 (*.f32 x x) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) (/.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))) |
(-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x)) |
(+.f32 (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)))) (/.f32 (*.f32 (*.f32 x x) x) (+.f32 (fma.f32 x x #s(literal 1 binary32)) (-.f32 (*.f32 x x) (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x))))) |
(+.f32 (/.f32 (*.f32 (*.f32 x x) x) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))))) (/.f32 (*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x #s(literal 1 binary32))) (fma.f32 x x (-.f32 (fma.f32 x x #s(literal 1 binary32)) (*.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))))))) |
(+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x) |
(+.f32 x (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) |
(/.f32 (sqrt.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (sqrt.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (sqrt.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (sqrt.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (sqrt.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (sqrt.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (sqrt.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (+.f32 (exp.f32 (asinh.f32 x)) (exp.f32 (neg.f32 (asinh.f32 x)))) #s(literal 2 binary32)) |
(/.f32 #s(literal 1 binary32) (pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal -1/2 binary32))) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1/2 binary32)) |
(exp.f32 (*.f32 (log.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32))) |
(cosh.f32 (neg.f32 (asinh.f32 x))) |
(cosh.f32 (asinh.f32 (neg.f32 x))) |
(cosh.f32 (asinh.f32 x)) |
(*.f32 (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (neg.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) (fabs.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) |
(*.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32)))) |
(sqrt.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32))) (neg.f32 (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(/.f32 (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (neg.f32 (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32))) (neg.f32 (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(/.f32 (neg.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (neg.f32 (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(/.f32 (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) #s(literal 1 binary32)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) |
(/.f32 (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) (-.f32 #s(literal 1 binary32) (*.f32 x x))) |
(/.f32 (fma.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x) #s(literal 1 binary32)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) |
(/.f32 (+.f32 #s(literal 1 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x))) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) |
(-.f32 (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 (*.f32 x x) #s(literal 1 binary32))) (/.f32 #s(literal 1 binary32) (-.f32 (*.f32 x x) #s(literal 1 binary32)))) |
(-.f32 (/.f32 #s(literal 1 binary32) (-.f32 #s(literal 1 binary32) (*.f32 x x))) (/.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (-.f32 #s(literal 1 binary32) (*.f32 x x)))) |
(fma.f32 (neg.f32 (neg.f32 x)) (neg.f32 (neg.f32 x)) #s(literal 1 binary32)) |
(fma.f32 (neg.f32 x) (neg.f32 x) #s(literal 1 binary32)) |
(fma.f32 x x #s(literal 1 binary32)) |
(pow.f32 (*.f32 (fma.f32 x x #s(literal 1 binary32)) (fma.f32 x x #s(literal 1 binary32))) #s(literal 1/2 binary32)) |
(pow.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) #s(literal 2 binary32)) |
(pow.f32 (fma.f32 x x #s(literal 1 binary32)) #s(literal 1 binary32)) |
(+.f32 (/.f32 (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32))))) (/.f32 #s(literal 1 binary32) (fma.f32 (*.f32 x x) (*.f32 x x) (-.f32 #s(literal 1 binary32) (*.f32 (*.f32 x x) #s(literal 1 binary32)))))) |
(+.f32 (/.f32 #s(literal 1 binary32) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x))))) (/.f32 (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)) (+.f32 #s(literal 1 binary32) (-.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 #s(literal 1 binary32) (*.f32 x x)))))) |
(+.f32 (*.f32 x x) #s(literal 1 binary32)) |
(+.f32 #s(literal 1 binary32) (*.f32 x x)) |
#s(literal 1 binary32) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (+.f32 #s(literal 1 binary32) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (fma.f32 (/.f32 (*.f32 x x) (+.f32 #s(literal 1 binary32) x)) #s(literal 1/2 binary32) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (fma.f32 (fma.f32 (*.f32 #s(literal -1/24 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (fma.f32 (fma.f32 (fma.f32 (*.f32 #s(literal 1/720 binary32) (*.f32 x x)) (+.f32 (/.f32 #s(literal 45 binary32) (+.f32 #s(literal 1 binary32) x)) (+.f32 (/.f32 #s(literal 30 binary32) (*.f32 (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x)) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 45 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))))) (*.f32 (+.f32 (/.f32 #s(literal 3 binary32) (*.f32 (+.f32 #s(literal 1 binary32) x) (+.f32 #s(literal 1 binary32) x))) (/.f32 #s(literal 3 binary32) (+.f32 #s(literal 1 binary32) x))) #s(literal -1/24 binary32))) (*.f32 x x) (/.f32 #s(literal 1/2 binary32) (+.f32 #s(literal 1 binary32) x))) (*.f32 x x) (log.f32 (+.f32 #s(literal 1 binary32) x)))) |
#s(approx (log (* x 2)) (log.f32 (+.f32 x x))) |
#s(approx (* x 2) (+.f32 x x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 #s(literal 1 binary32) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) x) #s(literal 1 binary32))) |
#s(approx (neg x) (neg.f32 x)) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) x) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 #s(literal -1/6 binary32) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 (-.f32 (*.f32 #s(literal 3/40 binary32) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 (-.f32 (*.f32 (fma.f32 #s(literal -5/112 binary32) (*.f32 x x) #s(literal 3/40 binary32)) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(literal 1 binary32)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 #s(literal 1 binary32) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (fma.f32 (fma.f32 #s(literal 1/2 binary32) x #s(literal 1 binary32)) x #s(literal 1 binary32))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (fma.f32 (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) x #s(literal 1 binary32)) x #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) #s(literal 1 binary32)) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 (-.f32 (*.f32 #s(literal 1/16 binary32) (*.f32 x x)) #s(literal 1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (+ (* x x) 1) #s(literal 1 binary32)) |
#s(approx (+ (* x x) 1) (fma.f32 x x #s(literal 1 binary32))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (/.f32 x x) (log.f32 x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (log.f32 x) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) (*.f32 (*.f32 x x) x)) #s(literal 1/6 binary32) (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) (*.f32 x x)) #s(literal 1/2 binary32) (/.f32 x x))) (log.f32 x))) |
#s(approx (log (* x 2)) (log.f32 (+.f32 x x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) x) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (+.f32 (/.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 x x)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (+.f32 x x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (log.f32 (+.f32 x x)) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (+.f32 x x)) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (+.f32 x x)) (+.f32 (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 x x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ (* x x) 1) (*.f32 x x)) |
#s(approx (+ (* x x) 1) (fma.f32 (*.f32 x x) #s(literal 1 binary32) #s(literal 1 binary32))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (/.f32 (neg.f32 x) x) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (neg.f32 (/.f32 (fma.f32 (/.f32 (+.f32 (neg.f32 (*.f32 x x)) #s(literal 1 binary32)) x) #s(literal -1/2 binary32) x) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (neg.f32 (/.f32 (+.f32 x (neg.f32 (/.f32 (fma.f32 (/.f32 (fma.f32 (*.f32 (*.f32 x x) x) #s(literal 2 binary32) (*.f32 #s(literal -3 binary32) x)) x) #s(literal -1/6 binary32) (+.f32 #s(literal 1/2 binary32) (*.f32 (neg.f32 (*.f32 x x)) #s(literal 1/2 binary32)))) x))) x)) (neg.f32 (neg.f32 (log.f32 (neg.f32 x)))))) |
#s(approx (log (* x 2)) (log.f32 (*.f32 #s(literal -2 binary32) (/.f32 #s(literal 1 binary32) (/.f32 #s(literal -1 binary32) x))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (*.f32 (+.f32 (/.f32 (neg.f32 x) x) #s(literal 1 binary32)) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (*.f32 (+.f32 (neg.f32 (/.f32 (-.f32 x (/.f32 #s(literal 1/2 binary32) x)) x)) #s(literal 1 binary32)) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (neg.f32 x) (+.f32 (neg.f32 (/.f32 (+.f32 (neg.f32 (/.f32 (-.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x)) x) x)) #s(literal 1 binary32)))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (/.f32 (-.f32 #s(literal 1/2 binary32) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (/.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) #s(literal 1/2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (/.f32 (-.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) #s(literal 1/2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) (/.f32 #s(literal 5/128 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) x))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) x))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x))) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (neg.f32 x) (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 1 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) (*.f32 x x)) (*.f32 x x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))))) |
Compiled 1 933 to 826 computations (57.3% saved)
9 alts after pruning (2 fresh and 7 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 149 | 2 | 151 |
| Fresh | 0 | 0 | 0 |
| Picked | 1 | 3 | 4 |
| Done | 1 | 4 | 5 |
| Total | 151 | 9 | 160 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 27.5% | (copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
| ✓ | 38.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
| ✓ | 27.5% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
| ▶ | 32.9% | (copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
| ▶ | 24.4% | (copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
| ✓ | 12.3% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
| ✓ | 16.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
| ✓ | 99.6% | (copysign.f32 (asinh.f32 x) x) |
| ✓ | 50.4% | (copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
Compiled 80 to 80 computations (0% saved)
| Inputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
(log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x)) |
(/.f32 #s(literal -1/2 binary32) x) |
#s(literal -1/2 binary32) |
x |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
(log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) |
(+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) |
#s(approx (sqrt (+ (* x x) 1)) x) |
| Outputs |
|---|
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 1)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* 1/2 x)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* x (+ 1/2 (* -1/8 (pow x 2))))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* 2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (+ 2 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (/ -1/2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (+ (* 1/8 (/ 1 (pow x 2))) (* 5/128 (/ 1 (pow x 6))))) x)))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
3 calls:
| Time | Variable | Point | Expression | |
|---|---|---|---|---|
| 1.0ms | x | @ | -inf | ((copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (/ -1/2 x) -1/2 x (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1))) |
| 1.0ms | x | @ | inf | ((copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (/ -1/2 x) -1/2 x (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1))) |
| 1.0ms | x | @ | 0 | ((copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (/ -1/2 x) -1/2 x (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (log (+ (sqrt (+ (* x x) 1)) x)) (+ (sqrt (+ (* x x) 1)) x) (sqrt (+ (* x x) 1))) |
Useful iterations: 0 (0.0ms)
| Iter | Nodes | Cost |
|---|---|---|
| 0 | 181 | 947 |
| 0 | 186 | 738 |
| 1 | 1043 | 665 |
| 0 | 8191 | 638 |
| 1× | iter-limit |
| 1× | node-limit |
| 1× | iter-limit |
| Inputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
(log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x)) |
(/.f32 #s(literal -1/2 binary32) x) |
#s(literal -1/2 binary32) |
x |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
(log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) |
(+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (+ x (sqrt (+ 1 (pow x 2))))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* -1/6 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* 3/40 (pow x 2)) 1/6)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 3/40 (* -5/112 (pow x 2)))) 1/6)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 1)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* 1/2 x)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (+ 1 (* x (+ 1 (* x (+ 1/2 (* -1/8 (pow x 2))))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 1)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* 1/2 (pow x 2))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* -1/8 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (- (* 1/16 (pow x 2)) 1/8))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (* -1 (log (/ 1 x)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (* 1/4 (/ 1 (pow x 2))))) (/ 3/32 (pow x 4))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 2) (+ (* -1 (log (/ 1 x))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6)))))) (/ 3/32 (pow x 4))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* 2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (+ 2 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* x (- (+ 2 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 x)) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (+ 1 (* 1/2 (/ 1 (pow x 2))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4)))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4)))))) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) #s(hole binary32 (copysign (log (- (sqrt (+ 1 (pow x 2))) (* -1 x))) x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (+ (log 1/2) (log (/ -1 x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (log (/ -1 x))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (* 1/4 (/ 1 (pow x 2)))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) #s(hole binary32 (- (+ (log 1/2) (+ (log (/ -1 x)) (/ 3/32 (pow x 4)))) (+ (* 1/4 (/ 1 (pow x 2))) (* 5/96 (/ 1 (pow x 6))))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (/ -1/2 x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- 1/2 (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (* 1/8 (/ 1 (pow x 2)))) x)))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(hole binary32 (* -1 (/ (- (+ 1/2 (/ 1/16 (pow x 4))) (+ (* 1/8 (/ 1 (pow x 2))) (* 5/128 (/ 1 (pow x 6))))) x)))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 x))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (+ 1 (* 1/2 (/ 1 (pow x 2)))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (* 1/2 (/ 1 (pow x 2)))) (/ 1/8 (pow x 4))))))) |
#s(approx (sqrt (+ (* x x) 1)) #s(hole binary32 (* -1 (* x (- (+ 1 (+ (* 1/2 (/ 1 (pow x 2))) (* 1/16 (/ 1 (pow x 6))))) (/ 1/8 (pow x 4))))))) |
| Outputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
(log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x)) |
(*.f32 (/.f32 #s(literal 1/2 binary32) x) #s(literal -1 binary32)) |
(*.f32 #s(literal -1/2 binary32) (/.f32 #s(literal 1 binary32) x)) |
(/.f32 #s(literal 1/2 binary32) (neg.f32 x)) |
(/.f32 #s(literal -1/2 binary32) (neg.f32 (neg.f32 x))) |
(/.f32 #s(literal -1/2 binary32) x) |
(neg.f32 (/.f32 #s(literal 1/2 binary32) x)) |
#s(literal -1/2 binary32) |
x |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
(log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) |
(-.f32 (log.f32 (*.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))) (log.f32 (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))) |
(-.f32 (log.f32 (fma.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) #s(approx (sqrt (+ (* x x) 1)) x) (*.f32 (*.f32 x x) x))) (log.f32 (fma.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))))) |
(/.f32 (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x))) (-.f32 x #s(approx (sqrt (+ (* x x) 1)) x))) |
(/.f32 (fma.f32 (*.f32 x x) x (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) #s(approx (sqrt (+ (* x x) 1)) x))) (fma.f32 x x (-.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) (*.f32 x #s(approx (sqrt (+ (* x x) 1)) x))))) |
(/.f32 (neg.f32 (*.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))) (neg.f32 (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))) |
(/.f32 (neg.f32 (fma.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) #s(approx (sqrt (+ (* x x) 1)) x) (*.f32 (*.f32 x x) x))) (neg.f32 (fma.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))))) |
(/.f32 (*.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) |
(/.f32 (fma.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) #s(approx (sqrt (+ (* x x) 1)) x) (*.f32 (*.f32 x x) x)) (fma.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)))) |
(-.f32 (/.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) (/.f32 (*.f32 x x) (-.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))) |
(+.f32 (/.f32 (*.f32 (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x)) #s(approx (sqrt (+ (* x x) 1)) x)) (fma.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)))) (/.f32 (*.f32 (*.f32 x x) x) (fma.f32 #s(approx (sqrt (+ (* x x) 1)) x) #s(approx (sqrt (+ (* x x) 1)) x) (-.f32 (*.f32 x x) (*.f32 #s(approx (sqrt (+ (* x x) 1)) x) x))))) |
(+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x) |
(+.f32 x #s(approx (sqrt (+ (* x x) 1)) x)) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (copysign.f32 (asinh.f32 x) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) x) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 #s(literal -1/6 binary32) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 (-.f32 (*.f32 #s(literal 3/40 binary32) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (*.f32 (fma.f32 (-.f32 (*.f32 (fma.f32 #s(literal -5/112 binary32) (*.f32 x x) #s(literal 3/40 binary32)) (*.f32 x x)) #s(literal 1/6 binary32)) (*.f32 x x) #s(literal 1 binary32)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) #s(literal 1 binary32)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (fma.f32 (fma.f32 #s(literal 1/2 binary32) x #s(literal 1 binary32)) x #s(literal 1 binary32))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (fma.f32 (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) x #s(literal 1 binary32)) x #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) #s(literal 1 binary32)) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 #s(literal 1/2 binary32) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 #s(literal -1/8 binary32) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (sqrt (+ (* x x) 1)) (fma.f32 (fma.f32 (fma.f32 #s(literal 1/16 binary32) (*.f32 x x) #s(literal -1/8 binary32)) (*.f32 x x) #s(literal 1/2 binary32)) (*.f32 x x) #s(literal 1 binary32))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (+.f32 x x))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (+.f32 (log.f32 (+.f32 x x)) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (+.f32 x x)) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (+.f32 x x)) (+.f32 (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (+.f32 x x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (*.f32 (-.f32 (+.f32 (+.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal 2 binary32)) (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) x) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal -1 binary32)) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (-.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal -1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (-.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))) (/.f32 #s(literal 1/2 binary32) (*.f32 x x))) #s(literal -1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) x)) |
#s(approx (copysign (log (+ (sqrt (+ (* x x) 1)) x)) x) (copysign.f32 (log.f32 (-.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) (neg.f32 x))) x)) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x)))) |
#s(approx (log (+ (sqrt (+ (* x x) 1)) x)) (-.f32 (-.f32 (+.f32 (log.f32 (*.f32 (/.f32 #s(literal -1 binary32) x) #s(literal 1/2 binary32))) (/.f32 #s(literal 3/32 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))) (/.f32 #s(literal 1/4 binary32) (*.f32 x x))) (/.f32 #s(literal 5/96 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 (+.f32 #s(literal -1/2 binary32) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x)) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (neg.f32 (/.f32 (-.f32 (-.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) #s(literal -1/2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) x))) |
#s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 (-.f32 (-.f32 (-.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 x x) (*.f32 x x))) #s(literal -1/2 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 x x))) (/.f32 #s(literal 5/128 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x)))) (neg.f32 x))) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)) |
#s(approx (sqrt (+ (* x x) 1)) (neg.f32 (*.f32 (-.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal -1 binary32)) x))) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (neg.f32 (-.f32 (-.f32 (/.f32 #s(literal 1/2 binary32) (*.f32 x x)) #s(literal -1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x))))) x)) |
#s(approx (sqrt (+ (* x x) 1)) (*.f32 (neg.f32 x) (-.f32 (-.f32 (+.f32 (/.f32 #s(literal 1/16 binary32) (*.f32 (*.f32 (*.f32 x x) x) (*.f32 (*.f32 x x) x))) (/.f32 #s(literal 1/2 binary32) (*.f32 x x))) #s(literal -1 binary32)) (/.f32 #s(literal 1/8 binary32) (*.f32 (*.f32 x x) (*.f32 x x)))))) |
Compiled 846 to 293 computations (65.4% saved)
10 alts after pruning (1 fresh and 9 done)
| Pruned | Kept | Total | |
|---|---|---|---|
| New | 51 | 1 | 52 |
| Fresh | 0 | 0 | 0 |
| Picked | 0 | 2 | 2 |
| Done | 0 | 7 | 7 |
| Total | 51 | 10 | 61 |
| Status | Accuracy | Program |
|---|---|---|
| ✓ | 27.5% | (copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
| ✓ | 38.4% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
| ✓ | 27.5% | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
| ✓ | 32.9% | (copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
| ✓ | 24.4% | (copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
| 23.6% | (copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32)))) x) | |
| ✓ | 12.3% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
| ✓ | 16.6% | (copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
| ✓ | 99.6% | (copysign.f32 (asinh.f32 x) x) |
| ✓ | 50.4% | (copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
Compiled 198 to 157 computations (20.7% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32)))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
(copysign.f32 (asinh.f32 x) x) |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) (log.f32 (*.f32 x #s(literal 2 binary32)))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) x))) x) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (/.f32 #s(literal -1/2 binary32) x))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) #s(approx (sqrt (+ (* x x) 1)) (neg.f32 x)))) x) |
(copysign.f32 (log.f32 (+.f32 (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))) x)) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (fma.f32 x x #s(literal 1 binary32))))) x) |
(copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Outputs |
|---|
(copysign.f32 (asinh.f32 x) x) |
2 calls:
| 7.0ms | x |
| 3.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 99.6% | 1 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| 99.6% | 1 | x |
Compiled 10 to 10 computations (0% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32)))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 (+.f32 #s(approx (sqrt (+ (* x x) 1)) x) x)) x) |
2 calls:
| 2.0ms | x |
| 2.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 84.3% | 3 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| 84.3% | 3 | x |
Compiled 10 to 10 computations (0% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32)))) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (+.f32 #s(literal 1 binary32) x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (sqrt (+ (* x x) 1)) x) (-.f32 x #s(literal -1 binary32)))) x) |
2 calls:
| 2.0ms | x |
| 2.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 68.1% | 3 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| 68.1% | 3 | x |
Compiled 10 to 10 computations (0% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
| Outputs |
|---|
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) (neg.f32 x))) x) |
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
2 calls:
| 1.0ms | x |
| 1.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 68.1% | 3 | x |
| 68.1% | 3 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
Compiled 10 to 10 computations (0% saved)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
| Outputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
(copysign.f32 (log.f32 #s(approx (+ (fabs x) (sqrt (+ (* x x) 1))) x)) x) |
2 calls:
| 1.0ms | x |
| 1.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 61.4% | 2 | x |
| 61.4% | 2 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
Compiled 10 to 10 computations (0% saved)
Total 0.0b remaining (0%)
Threshold costs 0b (0%)
| Inputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
| Outputs |
|---|
(copysign.f32 #s(approx (log (+ (fabs x) (sqrt (+ (* x x) 1)))) x) x) |
2 calls:
| 3.0ms | x |
| 1.0ms | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| Accuracy | Segments | Branch |
|---|---|---|
| 50.4% | 1 | (copysign.f32 (log.f32 (+.f32 (fabs.f32 x) (sqrt.f32 (+.f32 (*.f32 x x) #s(literal 1 binary32))))) x) |
| 50.4% | 1 | x |
Compiled 10 to 10 computations (0% saved)
| 2× | binary-search |
| 1× | narrow-enough |
| 1× | narrow-enough |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 1.16883385181427 | 5.523718357086182 |
| 0.0ms | -12.816547393798828 | -3.1067514419555664 |
Compiled 15 to 11 computations (26.7% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.9958671927452087 | 2.4102931022644043 |
| 0.0ms | -3.2454028129577637 | -1.8516743183135986 |
Compiled 12 to 13 computations (-8.3% saved)
| 2× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.9958671927452087 | 2.4102931022644043 |
| 0.0ms | -3.2454028129577637 | -1.8516743183135986 |
Compiled 12 to 13 computations (-8.3% saved)
| 1× | left-value |
| Time | Left | Right |
|---|---|---|
| 0.0ms | 0.9958671927452087 | 2.4102931022644043 |
Compiled 12 to 13 computations (-8.3% saved)
| 1× | fuel |
Compiled 74 to 50 computations (32.4% saved)
Compiled 99 to 69 computations (30.3% saved)
Loading profile data...