Expression, p6

Time bar (total: 1.7s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
100%0%0%100%0%0%0%1
Compiler

Compiled 41 to 33 computations (19.5% saved)

sample1.3s (77.4%)

Memory
-39.4MiB live, 1 906.5MiB allocated
Samples
845.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 453.0ms
ival-<=: 204.0ms (45.1% of total)
ival-add: 122.0ms (27% of total)
ival-mult: 56.0ms (12.4% of total)
ival-and: 38.0ms (8.4% of total)
exact: 30.0ms (6.6% of total)
ival-assert: 3.0ms (0.7% of total)
Bogosity

explain128.0ms (7.6%)

Memory
13.4MiB live, 171.8MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
8216(-13.354299316238727 -2.369619715169362 3.2274783149226707 12.561418043429526)47(-13.322428628133403 -2.703045030924381 3.1462607618327154 12.645583414080317)(+.f64 a (+.f64 b (+.f64 c d)))
00-0-a
00-0-d
00-0-(+.f64 c d)
00-0-(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
00-0-(+.f64 b (+.f64 c d))
00-0-c
00-0-#s(literal 2 binary64)
00-0-b
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 a (+.f64 b (+.f64 c d)))cancellation5193
Confusion
Predicted +Predicted -
+4689
-5116
Precision
0.9019607843137255
Recall
0.34074074074074073
Confusion?
Predicted +Predicted MaybePredicted -
+466326
-53086
Precision?
0.7569444444444444
Recall?
0.8074074074074075
Freqs
test
numberfreq
0205
151
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
41.0ms512×0valid
Compiler

Compiled 100 to 40 computations (60% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-add: 10.0ms (64.9% of total)
ival-mult: 5.0ms (32.4% of total)
ival-true: 1.0ms (6.5% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess12.0ms (0.7%)

Memory
-43.5MiB live, 7.9MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Outputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Compiler

Compiled 9 to 9 computations (0% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Compiler

Compiled 9 to 9 computations (0% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 c d)
cost-diff0
(+.f64 b (+.f64 c d))
cost-diff0
(+.f64 a (+.f64 b (+.f64 c d)))
cost-diff0
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Calls
Call 1
Inputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+.f64 a (+.f64 b (+.f64 c d)))
a
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
#s(literal 2 binary64)
Outputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+.f64 a (+.f64 b (+.f64 c d)))
a
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
#s(literal 2 binary64)

localize19.0ms (1.1%)

Memory
-0.3MiB live, 37.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 c d)
accuracy0.0
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
accuracy0.5036125488422102
(+.f64 b (+.f64 c d))
accuracy2.7709600497164035
(+.f64 a (+.f64 b (+.f64 c d)))
Samples
13.0ms256×0valid
Compiler

Compiled 60 to 20 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 3.0ms (58.9% of total)
ival-mult: 2.0ms (39.3% 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.4%)

Memory
14.8MiB live, 14.8MiB allocated
Counts
4 → 50
Calls
Call 1
Inputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
Outputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Calls

12 calls:

TimeVariablePointExpression
1.0ms
d
@inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d))
1.0ms
b
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d))
1.0ms
d
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d))
1.0ms
a
@inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d))
0.0ms
c
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d))

simplify1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
egg-herbie
Counts
50 → 4
Calls
Call 1
Inputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Outputs
(* 2 (+ b (+ c d)))
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
(+ b (+ c d))
(+.f64 b (+.f64 c d))
(+ a (+ b (+ c d)))
(+.f64 c d)

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
Outputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)

eval1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Compiler

Compiled 100 to 20 computations (80% saved)

prune1.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New628
Fresh000
Picked011
Done000
Total639
Accuracy
93.9%
Counts
9 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
10.3%
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
18.8%
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
Compiler

Compiled 39 to 33 computations (15.4% saved)

simplify0.0ms (0%)

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

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 c d)
cost-diff0
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
cost-diff0
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
cost-diff0
(+.f64 c d)
cost-diff0
(+.f64 b (+.f64 c d))
cost-diff0
(+.f64 a (+.f64 b (+.f64 c d)))
cost-diff0
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
a
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
(+.f64 c d)
c
d
#s(literal 2 binary64)
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
a
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
(+.f64 c d)
c
d
#s(literal 2 binary64)

localize28.0ms (1.7%)

Memory
-12.2MiB live, 59.7MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 c d)
accuracy0.0
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
accuracy57.42473831532947
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
accuracy0.0
(+.f64 c d)
accuracy0.5036125488422102
(+.f64 b (+.f64 c d))
accuracy2.7709600497164035
(+.f64 a (+.f64 b (+.f64 c d)))
accuracy52.0
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
Samples
18.0ms256×0valid
Compiler

Compiled 118 to 27 computations (77.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 3.0ms (57.2% of total)
ival-mult: 2.0ms (38.1% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.2%)

Memory
9.9MiB live, 9.9MiB allocated
Counts
6 → 50
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
Outputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Calls

12 calls:

TimeVariablePointExpression
0.0ms
c
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
d
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
b
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
d
@inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
a
@inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))

simplify1.0ms (0%)

Memory
2.3MiB live, 2.3MiB allocated
Algorithm
egg-herbie
Counts
50 → 6
Calls
Call 1
Inputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Outputs
(* 2 (+ b (+ c d)))
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
(+ b (+ c d))
(+.f64 b (+.f64 c d))
(+ a (+ b (+ c d)))
(+.f64 c d)
(* 2 a)
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))

rewrite0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(+.f64 a (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))

eval1.0ms (0.1%)

Memory
2.9MiB live, 2.9MiB allocated
Compiler

Compiled 209 to 21 computations (90% saved)

prune2.0ms (0.1%)

Memory
6.0MiB live, 6.0MiB allocated
Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New9211
Fresh000
Picked112
Done011
Total10414
Accuracy
93.9%
Counts
14 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
18.8%
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
10.6%
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
10.7%
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
Compiler

Compiled 70 to 47 computations (32.9% saved)

simplify0.0ms (0%)

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

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 c d)
cost-diff0
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
cost-diff0
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
cost-diff0
(+.f64 c d)
cost-diff0
(+.f64 b (+.f64 c d))
cost-diff0
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
cost-diff0
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
(+.f64 c d)
c
d
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
b
(+.f64 c d)
c
d
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
(+.f64 c d)
c
d

localize30.0ms (1.8%)

Memory
3.6MiB live, 45.6MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 c d)
accuracy52.0
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
accuracy57.42473831532947
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
accuracy0.0
(+.f64 c d)
accuracy0.5036125488422102
(+.f64 b (+.f64 c d))
accuracy52.0
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
accuracy57.37464854285113
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
Samples
24.0ms256×0valid
Compiler

Compiled 134 to 26 computations (80.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-add: 3.0ms (59.8% of total)
ival-mult: 1.0ms (19.9% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.7%)

Memory
-28.5MiB live, 9.1MiB allocated
Counts
6 → 50
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
Outputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Calls

12 calls:

TimeVariablePointExpression
0.0ms
d
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
a
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
c
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
b
@-inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))
0.0ms
a
@inf
((* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))) (+ b (+ c d)) (+ c d) (* (+ a (+ b (+ c d))) 2) (+ a (+ b (+ c d))))

simplify1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
egg-herbie
Counts
50 → 6
Calls
Call 1
Inputs
(* 2 (+ b (+ c d)))
(+ (* 2 a) (* 2 (+ b (+ c d))))
(+ b (+ c d))
(+ a (+ b (+ c d)))
(* 2 a)
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
a
(* a (+ 1 (+ (/ b a) (+ (/ c a) (/ d a)))))
(* -1 (* a (- (* -2 (/ (+ b (+ c d)) a)) 2)))
(* -1 (* a (- (* -1 (/ (+ b (+ c d)) a)) 1)))
(* 2 (+ a (+ c d)))
(+ (* 2 b) (* 2 (+ a (+ c d))))
(+ a (+ c d))
(+ c d)
(* 2 b)
(* b (+ 2 (* 2 (/ (+ a (+ c d)) b))))
b
(* b (+ 1 (+ (/ a b) (+ (/ c b) (/ d b)))))
(* b (+ 1 (+ (/ c b) (/ d b))))
(* -1 (* b (- (* -2 (/ (+ a (+ c d)) b)) 2)))
(* -1 (* b (- (* -1 (/ (+ a (+ c d)) b)) 1)))
(* -1 (* b (- (* -1 (/ (+ c d) b)) 1)))
(* 2 (+ a (+ b d)))
(+ (* 2 c) (* 2 (+ a (+ b d))))
(+ a (+ b d))
(+ b d)
d
(* 2 c)
(* c (+ 2 (* 2 (/ (+ a (+ b d)) c))))
c
(* c (+ 1 (+ (/ a c) (+ (/ b c) (/ d c)))))
(* c (+ 1 (+ (/ b c) (/ d c))))
(* c (+ 1 (/ d c)))
(* -1 (* c (- (* -2 (/ (+ a (+ b d)) c)) 2)))
(* -1 (* c (- (* -1 (/ (+ a (+ b d)) c)) 1)))
(* -1 (* c (- (* -1 (/ (+ b d) c)) 1)))
(* -1 (* c (- (* -1 (/ d c)) 1)))
(* 2 (+ a (+ b c)))
(+ (* 2 d) (* 2 (+ a (+ b c))))
(+ a (+ b c))
(+ b c)
(* 2 d)
(* d (+ 2 (* 2 (/ (+ a (+ b c)) d))))
(* d (+ 1 (+ (/ a d) (+ (/ b d) (/ c d)))))
(* d (+ 1 (+ (/ b d) (/ c d))))
(* d (+ 1 (/ c d)))
(* -1 (* d (- (* -2 (/ (+ a (+ b c)) d)) 2)))
(* -1 (* d (- (* -1 (/ (+ a (+ b c)) d)) 1)))
(* -1 (* d (- (* -1 (/ (+ b c) d)) 1)))
(* -1 (* d (- (* -1 (/ c d)) 1)))
Outputs
(* 2 (+ b (+ c d)))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
(+ (* 2 a) (* 2 (+ b (+ c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+ b (+ c d))
(+.f64 b (+.f64 c d))
(+ a (+ b (+ c d)))
(+.f64 c d)
(* 2 a)
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
(* a (+ 2 (* 2 (/ (+ b (+ c d)) a))))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))

rewrite0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d)))
(+.f64 b (+.f64 c d))
(+.f64 c d)
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (+ a (+ b (+ c d))) (+.f64 c d))

eval1.0ms (0.1%)

Memory
2.5MiB live, 2.5MiB allocated
Compiler

Compiled 219 to 17 computations (92.2% saved)

prune4.0ms (0.2%)

Memory
9.4MiB live, 9.4MiB allocated
Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New909
Fresh000
Picked022
Done022
Total9413
Accuracy
93.9%
Counts
13 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
18.8%
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
10.6%
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
10.7%
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
Compiler

Compiled 153 to 67 computations (56.2% saved)

regimes27.0ms (1.6%)

Memory
15.4MiB live, 53.2MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Outputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
Calls

8 calls:

10.0ms
(+.f64 a (+.f64 b (+.f64 c d)))
2.0ms
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
2.0ms
(+.f64 c d)
2.0ms
(+.f64 b (+.f64 c d))
2.0ms
a
Results
AccuracySegmentsBranch
93.9%1a
93.9%1b
93.9%1c
93.9%1d
93.9%1(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
93.9%1(+.f64 a (+.f64 b (+.f64 c d)))
93.9%1(+.f64 b (+.f64 c d))
93.9%1(+.f64 c d)
Compiler

Compiled 28 to 43 computations (-53.6% saved)

regimes31.0ms (1.8%)

Memory
-39.9MiB live, 44.5MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
Calls

8 calls:

9.0ms
(+.f64 c d)
2.0ms
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
2.0ms
(+.f64 b (+.f64 c d))
2.0ms
(+.f64 a (+.f64 b (+.f64 c d)))
2.0ms
c
Results
AccuracySegmentsBranch
18.8%1a
18.8%1c
18.8%1(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
18.8%1(+.f64 a (+.f64 b (+.f64 c d)))
18.8%1b
18.8%1d
18.8%1(+.f64 b (+.f64 c d))
18.8%1(+.f64 c d)
Compiler

Compiled 28 to 43 computations (-53.6% saved)

regimes14.0ms (0.9%)

Memory
35.9MiB live, 35.9MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
(*.f64 #s(approx (+ a (+ b (+ c d))) (+.f64 c d)) #s(literal 2 binary64))
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
Calls

8 calls:

2.0ms
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
2.0ms
c
2.0ms
(+.f64 c d)
2.0ms
(+.f64 a (+.f64 b (+.f64 c d)))
2.0ms
(+.f64 b (+.f64 c d))
Results
AccuracySegmentsBranch
10.7%1a
10.7%1b
10.7%1d
10.7%1(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
10.7%1(+.f64 a (+.f64 b (+.f64 c d)))
10.7%1(+.f64 b (+.f64 c d))
10.7%1(+.f64 c d)
10.7%1c
Compiler

Compiled 28 to 43 computations (-53.6% saved)

regimes13.0ms (0.8%)

Memory
-11.2MiB live, 27.0MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
Outputs
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
Calls

8 calls:

5.0ms
(+.f64 c d)
1.0ms
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
1.0ms
(+.f64 a (+.f64 b (+.f64 c d)))
1.0ms
(+.f64 b (+.f64 c d))
1.0ms
d
Results
AccuracySegmentsBranch
10.6%1b
10.6%1c
10.6%1(+.f64 b (+.f64 c d))
10.6%1a
10.6%1(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
10.6%1(+.f64 a (+.f64 b (+.f64 c d)))
10.6%1(+.f64 c d)
10.6%1d
Compiler

Compiled 28 to 43 computations (-53.6% saved)

simplify4.0ms (0.3%)

Memory
11.3MiB live, 11.3MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))
Outputs
(*.f64 (+.f64 a (+.f64 b (+.f64 c d))) #s(literal 2 binary64))
#s(approx (* (+ a (+ b (+ c d))) 2) (+.f64 a (+.f64 b (+.f64 c d))))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 b (+.f64 c d))))
#s(approx (* (+ a (+ b (+ c d))) 2) #s(approx (+ a (+ b (+ c d))) (+.f64 c d)))

soundness1.0ms (0%)

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

Compiled 70 to 19 computations (72.9% saved)

preprocess35.0ms (2.1%)

Memory
-13.7MiB live, 62.8MiB allocated
Compiler

Compiled 180 to 76 computations (57.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...