Hyperbolic tangent

Time bar (total: 4.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
100%100%0%0%0%0%0%2
Compiler

Compiled 15 to 9 computations (40% saved)

sample4.0s (91.4%)

Memory
103.2MiB live, 5 925.9MiB allocated; 1.1s collecting garbage
Samples
1.7s3 313×2valid
851.0ms4 547×1valid
501.0ms7 862×0exit
63.0ms396×0valid
Precisions
Click to see histograms. Total time spent on operations: 2.6s
ival-exp: 1.7s (66.5% of total)
adjust: 426.0ms (16.6% of total)
ival-div!: 187.0ms (7.3% of total)
ival-sub!: 99.0ms (3.9% of total)
ival-add!: 75.0ms (2.9% of total)
ival-neg: 74.0ms (2.9% of total)
Bogosity

preprocess60.0ms (1.4%)

Memory
3.6MiB live, 48.8MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0137
1767
23177
326407
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
11.1%
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
Symmetry

(negabs x)

Compiler

Compiled 20 to 14 computations (30% saved)

series10.0ms (0.2%)

Memory
-56.0MiB live, 7.7MiB allocated; 7ms collecting garbage
Counts
7 → 29
Calls
Call 1
Inputs
(/.f64 (-.f64 (exp.f64 x) (exp.f64 (neg.f64 x))) (+.f64 (exp.f64 x) (exp.f64 (neg.f64 x))))
(-.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
(exp.f64 x)
x
(exp.f64 (neg.f64 x))
(neg.f64 x)
(+.f64 (exp.f64 x) (exp.f64 (neg.f64 x)))
Outputs
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 x))
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 (* x (+ 1 (* -1/3 (pow x 2))))))
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 2/15 (pow x 2)) 1/3))))))
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 2/15 (* -17/315 (pow x 2)))) 1/3))))))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (* 2 x)))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (* x (+ 2 (* 1/3 (pow x 2))))))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (* x (+ 2 (* (pow x 2) (+ 1/3 (* 1/60 (pow x 2))))))))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (* x (+ 2 (* (pow x 2) (+ 1/3 (* (pow x 2) (+ 1/60 (* 1/2520 (pow x 2))))))))))
#s(approx (exp x) #s(hole binary64 1))
#s(approx (exp x) #s(hole binary64 (+ 1 x)))
#s(approx (exp x) #s(hole binary64 (+ 1 (* x (+ 1 (* 1/2 x))))))
#s(approx (exp x) #s(hole binary64 (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))))
#s(approx (exp (neg x)) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx (exp (neg x)) #s(hole binary64 (+ 1 (* x (- (* 1/2 x) 1)))))
#s(approx (exp (neg x)) #s(hole binary64 (+ 1 (* x (- (* x (+ 1/2 (* -1/6 x))) 1)))))
#s(approx (neg x) #s(hole binary64 (* -1 x)))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 2))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 (+ 2 (pow x 2))))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 (+ 2 (* (pow x 2) (+ 1 (* 1/12 (pow x 2)))))))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 (+ 2 (* (pow x 2) (+ 1 (* (pow x 2) (+ 1/12 (* 1/360 (pow x 2)))))))))
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x))))))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (- (exp x) (exp (neg x)))))
#s(approx (exp x) #s(hole binary64 (exp x)))
#s(approx (exp (neg x)) #s(hole binary64 (exp (neg x))))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 (+ (exp x) (exp (neg x)))))
#s(approx (/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) #s(hole binary64 (/ (- (exp x) (exp (* -1 x))) (+ (exp x) (exp (* -1 x))))))
#s(approx (- (exp x) (exp (neg x))) #s(hole binary64 (- (exp x) (exp (* -1 x)))))
#s(approx (exp (neg x)) #s(hole binary64 (exp (* -1 x))))
#s(approx (+ (exp x) (exp (neg x))) #s(hole binary64 (+ (exp x) (exp (* -1 x)))))
Calls

3 calls:

TimeVariablePointExpression
4.0ms
x
@0
((/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) (- (exp x) (exp (neg x))) (exp x) x (exp (neg x)) (neg x) (+ (exp x) (exp (neg x))))
4.0ms
x
@inf
((/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) (- (exp x) (exp (neg x))) (exp x) x (exp (neg x)) (neg x) (+ (exp x) (exp (neg x))))
1.0ms
x
@-inf
((/ (- (exp x) (exp (neg x))) (+ (exp x) (exp (neg x)))) (- (exp x) (exp (neg x))) (exp x) x (exp (neg x)) (neg x) (+ (exp x) (exp (neg x))))

rewrite306.0ms (7%)

Memory
33.0MiB live, 78.5MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0125490
0135348
1839337
27198337
08050309
125998309
Stop Event
iter-limit
node-limit
iter-limit

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...