Linear.Quaternion:$ccos from linear-1.19.1.3

Time bar (total: 1.0s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze14.0ms (1.4%)

Memory
20.1MiB live, 20.1MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
75%74.9%25%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
87.5%87.4%12.5%0.1%0%0%0%7
87.5%87.4%12.5%0.1%0%0%0%8
93.8%93.7%6.2%0.1%0%0%0%9
93.8%93.7%6.2%0.1%0%0%0%10
96.9%96.8%3.1%0.1%0%0%0%11
96.9%96.8%3.1%0.1%0%0%0%12
Compiler

Compiled 9 to 8 computations (11.1% saved)

sample805.0ms (80.1%)

Memory
-6.3MiB live, 1 373.2MiB allocated
Samples
580.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 389.0ms
ival-sin: 228.0ms (58.5% of total)
ival-div: 61.0ms (15.7% of total)
ival-mult: 51.0ms (13.1% of total)
ival-sinh: 40.0ms (10.3% of total)
ival-true: 6.0ms (1.5% of total)
ival-assert: 3.0ms (0.8% of total)
Bogosity

explain73.0ms (7.2%)

Memory
-0.6MiB live, 121.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(sinh.f64 y)
00-0-(/.f64 (sinh.f64 y) y)
00-0-y
00-0-(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
00-0-(sin.f64 x)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
36.0ms512×0valid
Compiler

Compiled 62 to 28 computations (54.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-sin: 13.0ms (55.3% of total)
ival-div: 4.0ms (17% of total)
ival-mult: 3.0ms (12.8% of total)
ival-sinh: 3.0ms (12.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess3.0ms (0.3%)

Memory
4.6MiB live, 4.6MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sinh.f64 y)
cost-diff0
(/.f64 (sinh.f64 y) y)
cost-diff0
(sin.f64 x)
cost-diff0
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sin.f64 x)
x
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
y
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sin.f64 x)
x
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
y

localize23.0ms (2.3%)

Memory
32.1MiB live, 32.1MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 (sinh.f64 y) y)
accuracy0.0
(sinh.f64 y)
accuracy0.0
(sin.f64 x)
accuracy0.00390625
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Samples
18.0ms256×0valid
Compiler

Compiled 36 to 14 computations (61.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-sin: 6.0ms (54.1% of total)
ival-div: 2.0ms (18% of total)
ival-mult: 2.0ms (18% of total)
ival-sinh: 1.0ms (9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series13.0ms (1.3%)

Memory
-22.9MiB live, 15.1MiB allocated
Counts
4 → 23
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sin.f64 x)
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
Outputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(* 1/2 (/ (* (sin x) (- (exp y) (/ 1 (exp y)))) y))
(sin x)
(+ (sin x) (* 1/6 (* (pow y 2) (sin x))))
(+ (sin x) (* (pow y 2) (+ (* 1/120 (* (pow y 2) (sin x))) (* 1/6 (sin x)))))
(+ (sin x) (* (pow y 2) (+ (* 1/6 (sin x)) (* (pow y 2) (+ (* 1/5040 (* (pow y 2) (sin x))) (* 1/120 (sin x)))))))
1
(+ 1 (* 1/6 (pow y 2)))
(+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2)))))))
y
(* y (+ 1 (* 1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2))))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2))))))))
(* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))
(* 1/2 (- (exp y) (/ 1 (exp y))))
Calls

6 calls:

TimeVariablePointExpression
4.0ms
y
@-inf
((* (sin x) (/ (sinh y) y)) (sin x) (/ (sinh y) y) (sinh y))
3.0ms
x
@0
((* (sin x) (/ (sinh y) y)) (sin x) (/ (sinh y) y) (sinh y))
2.0ms
y
@inf
((* (sin x) (/ (sinh y) y)) (sin x) (/ (sinh y) y) (sinh y))
1.0ms
y
@0
((* (sin x) (/ (sinh y) y)) (sin x) (/ (sinh y) y) (sinh y))
1.0ms
x
@inf
((* (sin x) (/ (sinh y) y)) (sin x) (/ (sinh y) y) (sinh y))

simplify1.0ms (0.1%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Counts
23 → 4
Calls
Call 1
Inputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(* 1/2 (/ (* (sin x) (- (exp y) (/ 1 (exp y)))) y))
(sin x)
(+ (sin x) (* 1/6 (* (pow y 2) (sin x))))
(+ (sin x) (* (pow y 2) (+ (* 1/120 (* (pow y 2) (sin x))) (* 1/6 (sin x)))))
(+ (sin x) (* (pow y 2) (+ (* 1/6 (sin x)) (* (pow y 2) (+ (* 1/5040 (* (pow y 2) (sin x))) (* 1/120 (sin x)))))))
1
(+ 1 (* 1/6 (pow y 2)))
(+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2)))))))
y
(* y (+ 1 (* 1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2))))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2))))))))
(* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))
(* 1/2 (- (exp y) (/ 1 (exp y))))
Outputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(sin.f64 x)
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
(/.f64 (sinh.f64 y) y)
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
(sinh.f64 y)

rewrite0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sin.f64 x)
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
(sin.f64 x)
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)

eval1.0ms (0.1%)

Memory
1.5MiB live, 1.5MiB allocated
Compiler

Compiled 75 to 14 computations (81.3% saved)

prune1.0ms (0.1%)

Memory
2.5MiB live, 2.5MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
100.0%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
27.0%
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
29.1%
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
48.9%
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Compiler

Compiled 39 to 31 computations (20.5% saved)

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sinh.f64 y)
cost-diff0
(/.f64 (sinh.f64 y) y)
cost-diff0
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
cost-diff0
(sinh.f64 y)
cost-diff0
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
cost-diff0
(sin.f64 x)
cost-diff0
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(sin.f64 x)
x
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(sinh.f64 y)
y
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
y
Outputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(sin.f64 x)
x
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(sinh.f64 y)
y
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(/.f64 (sinh.f64 y) y)
(sinh.f64 y)
y

localize27.0ms (2.6%)

Memory
-6.2MiB live, 34.4MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 (sinh.f64 y) y)
accuracy0.0
(sinh.f64 y)
accuracy46.74959324537866
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
accuracy0.0
(sinh.f64 y)
accuracy45.39804184433555
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
accuracy0.0
(sin.f64 x)
accuracy32.719458010004914
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Samples
21.0ms256×0valid
Compiler

Compiled 81 to 20 computations (75.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sin: 6.0ms (46.1% of total)
ival-div: 4.0ms (30.7% of total)
ival-mult: 2.0ms (15.4% of total)
ival-sinh: 1.0ms (7.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.5%)

Memory
8.4MiB live, 8.4MiB allocated
Counts
6 → 23
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(sin.f64 x)
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(sinh.f64 y)
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(/.f64 (sinh.f64 y) y)
Outputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(* 1/2 (/ (* (sin x) (- (exp y) (/ 1 (exp y)))) y))
(sin x)
(+ (sin x) (* 1/6 (* (pow y 2) (sin x))))
(+ (sin x) (* (pow y 2) (+ (* 1/120 (* (pow y 2) (sin x))) (* 1/6 (sin x)))))
(+ (sin x) (* (pow y 2) (+ (* 1/6 (sin x)) (* (pow y 2) (+ (* 1/5040 (* (pow y 2) (sin x))) (* 1/120 (sin x)))))))
y
(* y (+ 1 (* 1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2))))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2))))))))
1
(+ 1 (* 1/6 (pow y 2)))
(+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2)))))))
(* 1/2 (- (exp y) (/ 1 (exp y))))
(* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((* (sin x) (/ (sinh y) y)) (sin x) (* (sin x) (/ (sinh y) y)) (sinh y) (* (sin x) (/ (sinh y) y)) (/ (sinh y) y))
1.0ms
y
@inf
((* (sin x) (/ (sinh y) y)) (sin x) (* (sin x) (/ (sinh y) y)) (sinh y) (* (sin x) (/ (sinh y) y)) (/ (sinh y) y))
1.0ms
x
@inf
((* (sin x) (/ (sinh y) y)) (sin x) (* (sin x) (/ (sinh y) y)) (sinh y) (* (sin x) (/ (sinh y) y)) (/ (sinh y) y))
1.0ms
x
@-inf
((* (sin x) (/ (sinh y) y)) (sin x) (* (sin x) (/ (sinh y) y)) (sinh y) (* (sin x) (/ (sinh y) y)) (/ (sinh y) y))
0.0ms
x
@0
((* (sin x) (/ (sinh y) y)) (sin x) (* (sin x) (/ (sinh y) y)) (sinh y) (* (sin x) (/ (sinh y) y)) (/ (sinh y) y))

simplify1.0ms (0.1%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
egg-herbie
Counts
23 → 6
Calls
Call 1
Inputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(* 1/2 (/ (* (sin x) (- (exp y) (/ 1 (exp y)))) y))
(sin x)
(+ (sin x) (* 1/6 (* (pow y 2) (sin x))))
(+ (sin x) (* (pow y 2) (+ (* 1/120 (* (pow y 2) (sin x))) (* 1/6 (sin x)))))
(+ (sin x) (* (pow y 2) (+ (* 1/6 (sin x)) (* (pow y 2) (+ (* 1/5040 (* (pow y 2) (sin x))) (* 1/120 (sin x)))))))
y
(* y (+ 1 (* 1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2))))))
(* y (+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2))))))))
1
(+ 1 (* 1/6 (pow y 2)))
(+ 1 (* (pow y 2) (+ 1/6 (* 1/120 (pow y 2)))))
(+ 1 (* (pow y 2) (+ 1/6 (* (pow y 2) (+ 1/120 (* 1/5040 (pow y 2)))))))
(* 1/2 (- (exp y) (/ 1 (exp y))))
(* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))
Outputs
(* 1/2 (/ (* x (- (exp y) (/ 1 (exp y)))) y))
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(* x (+ (* -1/12 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y))))
(sin.f64 x)
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* 1/240 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y))))))
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(* x (+ (* 1/2 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/12 (/ (- (exp y) (/ 1 (exp y))) y)) (* (pow x 2) (+ (* -1/10080 (/ (* (pow x 2) (- (exp y) (/ 1 (exp y)))) y)) (* 1/240 (/ (- (exp y) (/ 1 (exp y))) y))))))))
(sinh.f64 y)
x
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(* x (+ 1 (* -1/6 (pow x 2))))
(/.f64 (sinh.f64 y) y)

rewrite0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(sin.f64 x)
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(sinh.f64 y)
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(/.f64 (sinh.f64 y) y)
Outputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
(sin.f64 x)
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
(sinh.f64 y)
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(/.f64 (sinh.f64 y) y)

eval1.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated
Compiler

Compiled 150 to 18 computations (88% saved)

prune2.0ms (0.2%)

Memory
4.3MiB live, 4.3MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New11011
Fresh000
Picked033
Done011
Total11415
Accuracy
100.0%
Counts
15 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
27.0%
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
29.1%
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
48.9%
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Compiler

Compiled 78 to 44 computations (43.6% saved)

regimes11.0ms (1.1%)

Memory
-20.2MiB live, 18.0MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Outputs
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Calls

5 calls:

4.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
2.0ms
y
2.0ms
(sin.f64 x)
2.0ms
x
1.0ms
(/.f64 (sinh.f64 y) y)
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
100.0%1(sin.f64 x)
100.0%1(/.f64 (sinh.f64 y) y)
Compiler

Compiled 15 to 17 computations (-13.3% saved)

regimes8.0ms (0.8%)

Memory
16.0MiB live, 16.0MiB allocated
Counts
3 → 3
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
Outputs
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
#s(approx (* (sin x) (/ (sinh y) y)) (/.f64 (sinh.f64 y) y))
Calls

5 calls:

2.0ms
(sin.f64 x)
2.0ms
x
2.0ms
y
1.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
1.0ms
(/.f64 (sinh.f64 y) y)
Results
AccuracySegmentsBranch
55.4%5x
74.5%3y
85.0%3(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
59.2%4(sin.f64 x)
74.5%2(/.f64 (sinh.f64 y) y)
Compiler

Compiled 15 to 17 computations (-13.3% saved)

regimes3.0ms (0.3%)

Memory
4.9MiB live, 4.9MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
Outputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
#s(approx (* (sin x) (/ (sinh y) y)) (sinh.f64 y))
Calls

2 calls:

1.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
1.0ms
(/.f64 (sinh.f64 y) y)
Results
AccuracySegmentsBranch
74.5%2(/.f64 (sinh.f64 y) y)
74.5%3(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
Compiler

Compiled 11 to 10 computations (9.1% saved)

regimes7.0ms (0.7%)

Memory
-26.7MiB live, 12.0MiB allocated
Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Outputs
#s(approx (* (sin x) (/ (sinh y) y)) (sin.f64 x))
Calls

5 calls:

2.0ms
x
1.0ms
(sin.f64 x)
1.0ms
(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
1.0ms
y
1.0ms
(/.f64 (sinh.f64 y) y)
Results
AccuracySegmentsBranch
48.9%1x
48.9%1(sin.f64 x)
48.9%1(*.f64 (sin.f64 x) (/.f64 (sinh.f64 y) y))
48.9%1y
48.9%1(/.f64 (sinh.f64 y) y)
Compiler

Compiled 15 to 17 computations (-13.3% saved)

bsearch1.0ms (0.1%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9987590551904253
+inf
0.0ms
-inf
-7.07464157162787e+50
Compiler

Compiled 10 to 11 computations (-10% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.202948188947407e+51
+inf
Compiler

Compiled 10 to 11 computations (-10% saved)

simplify4.0ms (0.4%)

Memory
8.2MiB live, 8.2MiB allocated

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...