Statistics.Distribution.Beta:$cvariance from math-functions-0.1.5.2

Time bar (total: 1.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze72.0ms (5.7%)

Memory
-2.0MiB live, 119.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
50%49.9%49.9%0.1%0%0%0%4
50%49.9%49.9%0.1%0%0%0%5
50%49.9%49.9%0.1%0%0%0%6
75%74.9%25%0.1%0%0%0%7
75%74.9%25%0.1%0%0%0%8
75%74.9%25%0.1%0%0%0%9
75%74.9%25%0.1%0%0%0%10
75%74.9%25%0.1%0%0%0%11
75%74.9%25%0.1%0%0%0%12
Compiler

Compiled 13 to 11 computations (15.4% saved)

sample768.0ms (61.7%)

Memory
37.1MiB live, 1 095.0MiB allocated
Samples
500.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 300.0ms
ival-mult: 179.0ms (59.7% of total)
ival-div: 63.0ms (21% of total)
ival-add: 42.0ms (14% of total)
ival-true: 7.0ms (2.3% of total)
exact: 5.0ms (1.7% of total)
ival-assert: 4.0ms (1.3% of total)
Bogosity

explain213.0ms (17.1%)

Memory
-74.6MiB live, 117.8MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
470-3(-5.322021709566896e-54 -8.94221384001693e-267 -8.460630888773281e-111)(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
00-0-#s(literal 1 binary64)
00-0-z
00-0-(*.f64 x y)
00-0-(+.f64 z #s(literal 1 binary64))
00-0-(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
00-0-(*.f64 z z)
00-0-y
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))o/o130
(*.f64 x y)overflow28
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))overflow92
(*.f64 z z)overflow70
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))n/o90
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))overflow92
(*.f64 z z)overflow70
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))u/n80
(*.f64 x y)underflow30
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))n/u70
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))underflow58
(*.f64 z z)underflow58
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))o/n40
(*.f64 x y)overflow28
/.f64(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))u/u30
(*.f64 x y)underflow30
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))underflow58
(*.f64 z z)underflow58
Confusion
Predicted +Predicted -
+443
-0209
Precision
1.0
Recall
0.9361702127659575
Confusion?
Predicted +Predicted MaybePredicted -
+4403
-00209
Precision?
1.0
Recall?
0.9361702127659575
Freqs
test
numberfreq
0212
144
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
32.0ms512×0valid
Compiler

Compiled 108 to 40 computations (63% saved)

Precisions
Click to see histograms. Total time spent on operations: 17.0ms
ival-mult: 10.0ms (59.7% of total)
ival-div: 3.0ms (17.9% of total)
ival-add: 3.0ms (17.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess4.0ms (0.4%)

Memory
-32.5MiB live, 5.5MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Outputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Compiler

Compiled 11 to 9 computations (18.2% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB 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
83.2%
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Compiler

Compiled 11 to 9 computations (18.2% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize22.0ms (1.8%)

Memory
30.3MiB live, 30.3MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 z z)
accuracy0.0
(*.f64 x y)
accuracy0.03515625
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
accuracy10.666577747259938
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Samples
16.0ms256×0valid
Compiler

Compiled 64 to 20 computations (68.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 5.0ms (60.8% of total)
ival-div: 2.0ms (24.3% of total)
ival-add: 1.0ms (12.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series13.0ms (1.1%)

Memory
-12.8MiB live, 22.9MiB allocated
Counts
4 → 17
Calls
Call 1
Inputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(*.f64 x y)
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(*.f64 z z)
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(* x y)
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
(pow z 2)
(* (pow z 2) (+ 1 z))
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
(pow z 3)
(* (pow z 3) (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Calls

9 calls:

TimeVariablePointExpression
3.0ms
x
@-inf
((/ (* x y) (* (* z z) (+ z 1))) (* x y) (* (* z z) (+ z 1)) (* z z))
2.0ms
y
@-inf
((/ (* x y) (* (* z z) (+ z 1))) (* x y) (* (* z z) (+ z 1)) (* z z))
2.0ms
x
@inf
((/ (* x y) (* (* z z) (+ z 1))) (* x y) (* (* z z) (+ z 1)) (* z z))
1.0ms
x
@0
((/ (* x y) (* (* z z) (+ z 1))) (* x y) (* (* z z) (+ z 1)) (* z z))
1.0ms
y
@0
((/ (* x y) (* (* z z) (+ z 1))) (* x y) (* (* z z) (+ z 1)) (* z z))

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
17 → 4
Calls
Call 1
Inputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(* x y)
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
(pow z 2)
(* (pow z 2) (+ 1 z))
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
(pow z 3)
(* (pow z 3) (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(* x y)
(*.f64 x y)
(/ (* x y) (pow z 2))
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(*.f64 z z)

rewrite0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(*.f64 x y)
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(*.f64 z z)
Outputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(*.f64 x y)
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(*.f64 z z)

eval1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Compiler

Compiled 116 to 20 computations (82.8% saved)

prune1.0ms (0.1%)

Memory
2.7MiB live, 2.7MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New628
Fresh000
Picked011
Done000
Total639
Accuracy
83.3%
Counts
9 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.2%
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.0%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.1%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
Compiler

Compiled 45 to 34 computations (24.4% saved)

simplify0.0ms (0%)

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

Found 6 expressions of interest:

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

localize27.0ms (2.1%)

Memory
-1.6MiB live, 34.0MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 z #s(literal 1 binary64))
accuracy0.0
(*.f64 z z)
accuracy0.03515625
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
accuracy62.69698957819371
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
accuracy0.0
(*.f64 z z)
accuracy62.6440465442584
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
Samples
20.0ms256×0valid
Compiler

Compiled 96 to 26 computations (72.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-mult: 9.0ms (70.9% of total)
ival-div: 2.0ms (15.8% of total)
ival-add: 1.0ms (7.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.5%)

Memory
10.9MiB live, 10.9MiB allocated
Counts
5 → 20
Calls
Call 1
Inputs
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
(*.f64 z z)
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(+.f64 z #s(literal 1 binary64))
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
(pow z 2)
(* (pow z 2) (+ 1 z))
1
(+ 1 z)
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
(pow z 3)
(* (pow z 3) (+ 1 (/ 1 z)))
z
(* z (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Calls

9 calls:

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

simplify0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
egg-herbie
Counts
20 → 5
Calls
Call 1
Inputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
(pow z 2)
(* (pow z 2) (+ 1 z))
1
(+ 1 z)
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
(pow z 3)
(* (pow z 3) (+ 1 (/ 1 z)))
z
(* z (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
(/ (* x y) (pow z 2))
(*.f64 z z)
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
(+.f64 z #s(literal 1 binary64))

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
1.9MiB live, 1.9MiB allocated
Compiler

Compiled 179 to 18 computations (89.9% saved)

prune2.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New819
Fresh000
Picked022
Done011
Total8412
Accuracy
83.4%
Counts
12 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.2%
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.4%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
2.0%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.1%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
Compiler

Compiled 60 to 46 computations (23.3% saved)

simplify0.0ms (0%)

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

Found 2 expressions of interest:

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

localize28.0ms (2.2%)

Memory
-13.5MiB live, 31.1MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 z #s(literal 1 binary64))
accuracy62.44850228132796
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
Samples
23.0ms256×0valid
Compiler

Compiled 38 to 23 computations (39.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 13.0ms (80.3% of total)
ival-div: 2.0ms (12.3% of total)
ival-add: 1.0ms (6.2% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.4%)

Memory
10.7MiB live, 10.7MiB allocated
Counts
2 → 16
Calls
Call 1
Inputs
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
(+.f64 z #s(literal 1 binary64))
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
1
(+ 1 z)
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
z
(* z (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Calls

9 calls:

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

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Counts
16 → 2
Calls
Call 1
Inputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
(/ (* x y) (pow z 2))
(/ (+ (* -1 (* x (* y z))) (* x y)) (pow z 2))
(/ (+ (* x y) (* z (- (* x (* y z)) (* x y)))) (pow z 2))
(/ (+ (* x y) (* z (- (* z (- (* -1 (* x (* y z))) (* -1 (* x y)))) (* x y)))) (pow z 2))
1
(+ 1 z)
(/ (* x y) (pow z 3))
(/ (+ (* -1 (/ (* x y) z)) (* x y)) (pow z 3))
(/ (- (+ (* x y) (/ (* x y) (pow z 2))) (/ (* x y) z)) (pow z 3))
(/ (- (+ (* -1 (/ (* x y) (pow z 3))) (* x y)) (+ (* -1 (/ (* x y) (pow z 2))) (/ (* x y) z))) (pow z 3))
z
(* z (+ 1 (/ 1 z)))
(* -1 (/ (+ (* -1 (* x y)) (/ (* x y) z)) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (/ (* x y) z) (* x y)) z))) (pow z 3)))
(* -1 (/ (+ (* -1 (* x y)) (* -1 (/ (- (* -1 (/ (- (/ (* x y) z) (* x y)) z)) (* x y)) z))) (pow z 3)))
Outputs
(/ (* x y) (* (pow z 2) (+ 1 z)))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
(/ (* x y) (pow z 2))
(+.f64 z #s(literal 1 binary64))

rewrite0.0ms (0%)

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

eval0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Compiler

Compiled 57 to 13 computations (77.2% saved)

prune8.0ms (0.7%)

Memory
-32.1MiB live, 5.0MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New303
Fresh000
Picked011
Done033
Total347
Accuracy
83.4%
Counts
7 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
83.2%
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.4%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
2.0%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.1%
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
Compiler

Compiled 120 to 64 computations (46.7% saved)

regimes11.0ms (0.9%)

Memory
25.5MiB live, 25.4MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Outputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Calls

6 calls:

2.0ms
z
2.0ms
y
2.0ms
x
2.0ms
(*.f64 x y)
2.0ms
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
Results
AccuracySegmentsBranch
83.2%1x
83.2%1y
83.2%1z
83.2%1(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
83.2%1(*.f64 x y)
83.2%1(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
Compiler

Compiled 24 to 29 computations (-20.8% saved)

regimes19.0ms (1.6%)

Memory
-14.9MiB live, 22.6MiB allocated
Accuracy

Total -0.5b remaining (-0.7%)

Threshold costs -0.5b (-0.7%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 z z))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
Outputs
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
Calls

6 calls:

11.0ms
z
2.0ms
y
2.0ms
x
2.0ms
(*.f64 x y)
1.0ms
(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
Results
AccuracySegmentsBranch
2.4%1x
2.4%1y
2.4%1z
2.4%1(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
2.4%1(*.f64 x y)
2.4%1(*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64)))
Compiler

Compiled 24 to 29 computations (-20.8% saved)

simplify4.0ms (0.3%)

Memory
10.1MiB live, 10.1MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))
Outputs
(/.f64 (*.f64 x y) (*.f64 (*.f64 z z) (+.f64 z #s(literal 1 binary64))))
#s(approx (/ (* x y) (* (* z z) (+ z 1))) (+.f64 z #s(literal 1 binary64)))

soundness1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Stop Event
done
Compiler

Compiled 26 to 16 computations (38.5% saved)

preprocess34.0ms (2.7%)

Memory
16.3MiB live, 53.8MiB allocated
Compiler

Compiled 126 to 84 computations (33.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...