Linear.Quaternion:$ctan from linear-1.19.1.3

Time bar (total: 1.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze71.0ms (5.2%)

Memory
8.2MiB live, 88.6MiB 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
0%0%99.9%0.1%0%0%0%3
25%25%74.9%0.1%0%0%0%4
37.5%37.4%62.4%0.1%0%0%0%5
37.5%37.4%62.4%0.1%0%0%0%6
56.3%56.2%43.7%0.1%0%0%0%7
65.6%65.5%34.3%0.1%0%0%0%8
65.6%65.5%34.3%0.1%0%0%0%9
76.6%76.5%23.4%0.1%0%0%0%10
82%81.9%17.9%0.1%0%0%0%11
82%81.9%17.9%0.1%0%0%0%12
Compiler

Compiled 10 to 9 computations (10% saved)

sample939.0ms (69.6%)

Memory
7.5MiB live, 1 117.6MiB allocated
Samples
489.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 297.0ms
ival-div: 131.0ms (44.1% of total)
ival-cosh: 104.0ms (35% of total)
ival-mult: 52.0ms (17.5% of total)
ival-true: 6.0ms (2% of total)
ival-assert: 3.0ms (1% of total)
Bogosity

explain84.0ms (6.2%)

Memory
-12.5MiB live, 109.8MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
250-0-(*.f64 (cosh.f64 x) (/.f64 y x))
110-0-(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
00-0-(/.f64 y x)
00-0-y
00-0-(cosh.f64 x)
00-0-z
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
*.f64(*.f64 (cosh.f64 x) (/.f64 y x))o*u250
(cosh.f64 x)overflow137
(/.f64 y x)underflow25
/.f64(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)o/n110
(cosh.f64 x)overflow137
(/.f64 y x)overflow33
(*.f64 (cosh.f64 x) (/.f64 y x))overflow170
Confusion
Predicted +Predicted -
+360
-0220
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+3600
-00220
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0220
136
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
46.0ms512×0valid
Compiler

Compiled 78 to 32 computations (59% saved)

Precisions
Click to see histograms. Total time spent on operations: 31.0ms
ival-div: 22.0ms (70% of total)
ival-cosh: 6.0ms (19.1% of total)
ival-mult: 3.0ms (9.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess3.0ms (0.2%)

Memory
6.0MiB live, 6.0MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Outputs
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Compiler

Compiled 8 to 7 computations (12.5% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 8 to 7 computations (12.5% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize26.0ms (1.9%)

Memory
-6.4MiB live, 31.0MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 y x)
accuracy0.0
(cosh.f64 x)
accuracy2.615071554907858
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
accuracy5.699189851622882
(*.f64 (cosh.f64 x) (/.f64 y x))
Samples
21.0ms256×0valid
Compiler

Compiled 46 to 16 computations (65.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 4.0ms (48.7% of total)
ival-cosh: 3.0ms (36.5% of total)
ival-mult: 1.0ms (12.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series22.0ms (1.6%)

Memory
-17.6MiB live, 26.5MiB allocated
Counts
4 → 15
Calls
Call 1
Inputs
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
(*.f64 (cosh.f64 x) (/.f64 y x))
(cosh.f64 x)
(/.f64 y x)
Outputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
Calls

9 calls:

TimeVariablePointExpression
6.0ms
y
@inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
3.0ms
y
@0
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
3.0ms
x
@-inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
3.0ms
x
@inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
2.0ms
y
@-inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
15 → 4
Calls
Call 1
Inputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
Outputs
(/ y (* x z))
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(*.f64 (cosh.f64 x) (/.f64 y x))
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(cosh.f64 x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/.f64 y x)

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Compiler

Compiled 87 to 15 computations (82.8% saved)

prune1.0ms (0.1%)

Memory
2.9MiB live, 2.9MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
91.7%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
86.1%
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
6.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
26.3%
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
29.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Compiler

Compiled 46 to 36 computations (21.7% saved)

simplify0.0ms (0%)

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

Found 8 expressions of interest:

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

localize27.0ms (2%)

Memory
-2.1MiB live, 35.4MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 y x)
accuracy60.058295868306566
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
accuracy0.0
(/.f64 y x)
accuracy0.0
(cosh.f64 x)
accuracy5.699189851622882
(*.f64 (cosh.f64 x) (/.f64 y x))
accuracy44.148360590085126
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
accuracy0.0
(cosh.f64 x)
accuracy45.32991879493934
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Samples
21.0ms256×0valid
Compiler

Compiled 106 to 22 computations (79.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 4.0ms (48.3% of total)
ival-cosh: 3.0ms (36.3% of total)
ival-mult: 1.0ms (12.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series10.0ms (0.7%)

Memory
17.6MiB live, 17.6MiB allocated
Counts
6 → 15
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
(cosh.f64 x)
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
(*.f64 (cosh.f64 x) (/.f64 y x))
(/.f64 y x)
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
Outputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((/ (* (cosh x) (/ y x)) z) (cosh x) (/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (/ y x) (/ (* (cosh x) (/ y x)) z))
1.0ms
x
@-inf
((/ (* (cosh x) (/ y x)) z) (cosh x) (/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (/ y x) (/ (* (cosh x) (/ y x)) z))
1.0ms
y
@inf
((/ (* (cosh x) (/ y x)) z) (cosh x) (/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (/ y x) (/ (* (cosh x) (/ y x)) z))
1.0ms
y
@0
((/ (* (cosh x) (/ y x)) z) (cosh x) (/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (/ y x) (/ (* (cosh x) (/ y x)) z))
1.0ms
x
@inf
((/ (* (cosh x) (/ y x)) z) (cosh x) (/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (/ y x) (/ (* (cosh x) (/ y x)) z))

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
15 → 6
Calls
Call 1
Inputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
Outputs
(/ y (* x z))
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(cosh.f64 x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(*.f64 (cosh.f64 x) (/.f64 y x))
1
(/.f64 y x)
(+ 1 (* 1/2 (pow x 2)))
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
2.7MiB live, 2.7MiB allocated
Compiler

Compiled 236 to 23 computations (90.3% saved)

prune3.0ms (0.2%)

Memory
5.0MiB live, 5.0MiB allocated
Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New13114
Fresh000
Picked033
Done011
Total13518
Accuracy
91.7%
Counts
18 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
86.1%
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
6.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
26.3%
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
12.0%
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
29.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Compiler

Compiled 65 to 47 computations (27.7% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize25.0ms (1.8%)

Memory
-0.4MiB live, 37.5MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 y x)
accuracy5.699189851622882
(*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x))
accuracy44.148360590085126
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
accuracy62.489820031237635
#s(approx (cosh x) (/.f64 y x))
Samples
19.0ms256×0valid
Compiler

Compiled 63 to 20 computations (68.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 4.0ms (48.3% of total)
ival-cosh: 3.0ms (36.2% of total)
ival-mult: 1.0ms (12.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series19.0ms (1.4%)

Memory
-17.4MiB live, 19.4MiB allocated
Counts
4 → 15
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
(*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x))
#s(approx (cosh x) (/.f64 y x))
(/.f64 y x)
Outputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
Calls

9 calls:

TimeVariablePointExpression
11.0ms
x
@-inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
1.0ms
y
@-inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
1.0ms
y
@inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
1.0ms
y
@0
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))
1.0ms
x
@inf
((/ (* (cosh x) (/ y x)) z) (* (cosh x) (/ y x)) (cosh x) (/ y x))

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
15 → 4
Calls
Call 1
Inputs
(/ y (* x z))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/ y x)
(/ (+ y (* 1/2 (* (pow x 2) y))) x)
(/ (+ y (* (pow x 2) (+ (* 1/24 (* (pow x 2) y)) (* 1/2 y)))) x)
(/ (+ y (* (pow x 2) (+ (* 1/2 y) (* (pow x 2) (+ (* 1/720 (* (pow x 2) y)) (* 1/24 y)))))) x)
1
(+ 1 (* 1/2 (pow x 2)))
(+ 1 (* (pow x 2) (+ 1/2 (* 1/24 (pow x 2)))))
(+ 1 (* (pow x 2) (+ 1/2 (* (pow x 2) (+ 1/24 (* 1/720 (pow x 2)))))))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) (* x z)))
(* 1/2 (/ (* y (+ (exp x) (/ 1 (exp x)))) x))
(* 1/2 (+ (exp x) (/ 1 (exp x))))
Outputs
(/ y (* x z))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
(/ (+ (* 1/2 (/ (* (pow x 2) y) z)) (/ y z)) x)
(*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x))
(/ (+ (* (pow x 2) (+ (* 1/24 (/ (* (pow x 2) y) z)) (* 1/2 (/ y z)))) (/ y z)) x)
#s(approx (cosh x) (/.f64 y x))
(/ (+ (* (pow x 2) (+ (* 1/2 (/ y z)) (* (pow x 2) (+ (* 1/720 (/ (* (pow x 2) y) z)) (* 1/24 (/ y z)))))) (/ y z)) x)
(/.f64 y x)

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
1.9MiB live, 1.9MiB allocated
Compiler

Compiled 150 to 14 computations (90.7% saved)

prune3.0ms (0.2%)

Memory
6.6MiB live, 6.6MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New808
Fresh000
Picked011
Done044
Total8513
Accuracy
91.7%
Counts
13 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
86.1%
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
6.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
26.3%
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
12.0%
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
29.2%
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Compiler

Compiled 130 to 64 computations (50.8% saved)

regimes24.0ms (1.8%)

Memory
-24.2MiB live, 24.2MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Outputs
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Calls

5 calls:

15.0ms
y
2.0ms
z
2.0ms
x
2.0ms
(*.f64 (cosh.f64 x) (/.f64 y x))
2.0ms
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Results
AccuracySegmentsBranch
86.1%1x
86.1%1y
86.1%1z
91.6%2(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
91.6%2(*.f64 (cosh.f64 x) (/.f64 y x))
Compiler

Compiled 17 to 22 computations (-29.4% saved)

regimes10.0ms (0.7%)

Memory
23.0MiB live, 23.0MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
Outputs
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 (cosh.f64 x) (/.f64 y x)))
Calls

5 calls:

2.0ms
x
2.0ms
z
2.0ms
y
2.0ms
(*.f64 (cosh.f64 x) (/.f64 y x))
2.0ms
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Results
AccuracySegmentsBranch
40.1%2z
37.2%3x
31.5%2y
40.1%2(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
31.8%2(*.f64 (cosh.f64 x) (/.f64 y x))
Compiler

Compiled 17 to 22 computations (-29.4% saved)

regimes14.0ms (1%)

Memory
-25.5MiB live, 12.6MiB allocated
Counts
3 → 3
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Outputs
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
#s(approx (/ (* (cosh x) (/ y x)) z) (*.f64 #s(approx (cosh x) (/.f64 y x)) (/.f64 y x)))
#s(approx (/ (* (cosh x) (/ y x)) z) (cosh.f64 x))
Calls

3 calls:

2.0ms
x
2.0ms
z
1.0ms
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Results
AccuracySegmentsBranch
37.2%3x
31.8%2(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
29.2%1z
Compiler

Compiled 10 to 13 computations (-30% saved)

regimes7.0ms (0.5%)

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

5 calls:

1.0ms
x
1.0ms
y
1.0ms
z
1.0ms
(*.f64 (cosh.f64 x) (/.f64 y x))
1.0ms
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Results
AccuracySegmentsBranch
12.0%1z
12.0%1y
12.0%1(*.f64 (cosh.f64 x) (/.f64 y x))
14.4%2(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
12.0%1x
Compiler

Compiled 17 to 22 computations (-29.4% saved)

regimes6.0ms (0.4%)

Memory
15.0MiB live, 15.0MiB allocated
Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
Outputs
#s(approx (/ (* (cosh x) (/ y x)) z) (/.f64 y x))
Calls

5 calls:

1.0ms
z
1.0ms
y
1.0ms
x
1.0ms
(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
1.0ms
(*.f64 (cosh.f64 x) (/.f64 y x))
Results
AccuracySegmentsBranch
6.2%1(*.f64 (cosh.f64 x) (/.f64 y x))
6.2%1x
6.2%1y
6.2%1z
6.2%1(/.f64 (*.f64 (cosh.f64 x) (/.f64 y x)) z)
Compiler

Compiled 17 to 22 computations (-29.4% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
+inf
NaN
Compiler

Compiled 11 to 13 computations (-18.2% saved)

bsearch14.0ms (1%)

Memory
-19.5MiB live, 19.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
1.9516922324360263e-299
3.459552047438595e-298
Samples
6.0ms112×0valid
Compiler

Compiled 193 to 167 computations (13.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-div: 2.0ms (54.8% of total)
ival-mult: 1.0ms (27.4% of total)
ival-cosh: 1.0ms (27.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch30.0ms (2.2%)

Memory
3.5MiB live, 41.5MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
0.0001696041459521507
0.006814345135216369
13.0ms
-2.0737058883172802e-72
-8.177379796257035e-81
Samples
15.0ms256×0valid
Compiler

Compiled 491 to 365 computations (25.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-div: 4.0ms (46.7% of total)
ival-cosh: 3.0ms (35% of total)
ival-mult: 1.0ms (11.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-7.745913411683186e-112
-3.4956671758899257e-149
Compiler

Compiled 11 to 13 computations (-18.2% saved)

simplify4.0ms (0.3%)

Memory
9.0MiB live, 9.0MiB allocated

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...