Graphics.Rendering.Plot.Render.Plot.Legend:renderLegendOutside from plot-0.2.3.4, B

Time bar (total: 1.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

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

Compiled 17 to 14 computations (17.6% saved)

sample884.0ms (69.1%)

Memory
18.5MiB live, 1 469.1MiB allocated
Samples
545.0ms8 040×0valid
17.0ms131×1valid
17.0ms85×2valid
Precisions
Click to see histograms. Total time spent on operations: 357.0ms
ival-add: 228.0ms (63.9% of total)
ival-mult: 104.0ms (29.1% of total)
adjust: 10.0ms (2.8% of total)
ival-true: 7.0ms (2% of total)
exact: 5.0ms (1.4% of total)
ival-assert: 4.0ms (1.1% of total)
Bogosity

explain141.0ms (11%)

Memory
7.9MiB live, 208.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 y z)
00-0-#s(literal 5 binary64)
00-0-t
00-0-(+.f64 (+.f64 y z) z)
00-0-z
00-0-(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
00-0-(*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
00-0-y
00-0-(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
00-0-x
00-0-(*.f64 y #s(literal 5 binary64))
00-0-(+.f64 (+.f64 (+.f64 y z) z) y)
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
41.0ms484×0valid
3.0ms22×1valid
1.0ms2valid
Compiler

Compiled 193 to 52 computations (73.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 24.0ms
ival-add: 15.0ms (62.1% of total)
ival-mult: 7.0ms (29% of total)
adjust: 1.0ms (4.1% of total)
ival-true: 1.0ms (4.1% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess7.0ms (0.6%)

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

Compiled 15 to 12 computations (20% saved)

eval0.0ms (0%)

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

Compiled 15 to 12 computations (20% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize28.0ms (2.2%)

Memory
17.1MiB live, 55.1MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.015625
(*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
accuracy0.01953125
(+.f64 (+.f64 (+.f64 y z) z) y)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy0.05859375
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Samples
19.0ms242×0valid
2.0ms11×1valid
1.0ms2valid
Compiler

Compiled 118 to 26 computations (78% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-add: 6.0ms (58.4% of total)
ival-mult: 3.0ms (29.2% of total)
adjust: 1.0ms (9.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series13.0ms (1%)

Memory
-13.9MiB live, 29.2MiB allocated
Counts
5 → 56
Calls
Call 1
Inputs
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
(*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
(+.f64 (+.f64 (+.f64 y z) z) y)
(+.f64 (+.f64 y z) z)
Outputs
(* 5 y)
(+ (* 5 y) (* x (+ t (+ (* 2 y) (* 2 z)))))
(* x (+ t (+ (* 2 y) (* 2 z))))
(* x (+ t (+ (* 2 y) (+ (* 2 z) (* 5 (/ y x))))))
(* -1 (* x (+ (* -5 (/ y x)) (* -1 (+ t (+ (* 2 y) (* 2 z)))))))
(* x (+ t (* 2 z)))
(+ (* x (+ t (* 2 z))) (* y (+ 5 (* 2 x))))
(+ (* 2 (* x y)) (* x (+ t (* 2 z))))
(+ t (* 2 z))
(+ t (+ (* 2 y) (* 2 z)))
(* 2 z)
(+ (* 2 y) (* 2 z))
(+ y (* 2 z))
(* y (+ 5 (* 2 x)))
(* y (+ 5 (+ (* 2 x) (/ (* x (+ t (* 2 z))) y))))
(* 2 (* x y))
(* y (+ (* 2 x) (/ (* x (+ t (* 2 z))) y)))
(* 2 y)
(* y (+ 2 (+ (* 2 (/ z y)) (/ t y))))
(* y (+ 2 (* 2 (/ z y))))
y
(* y (+ 1 (* 2 (/ z y))))
(* -1 (* y (- (* -2 x) 5)))
(* -1 (* y (- (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y))) 5)))
(* -1 (* y (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y)))))
(* -1 (* y (- (* -1 (/ (+ t (* 2 z)) y)) 2)))
(* -1 (* y (- (* -2 (/ z y)) 2)))
(* -1 (* y (- (* -2 (/ z y)) 1)))
(+ (* 5 y) (* x (+ t (* 2 y))))
(+ (* 2 (* x z)) (+ (* 5 y) (* x (+ t (* 2 y)))))
(* x (+ t (* 2 y)))
(+ (* 2 (* x z)) (* x (+ t (* 2 y))))
(+ t (* 2 y))
(* 2 (* x z))
(* z (+ (* 2 x) (+ (* 5 (/ y z)) (/ (* x (+ t (* 2 y))) z))))
(* z (+ (* 2 x) (/ (* x (+ t (* 2 y))) z)))
(* z (+ 2 (+ (* 2 (/ y z)) (/ t z))))
(* z (+ 2 (* 2 (/ y z))))
(* z (+ 2 (/ y z)))
(* -1 (* z (+ (* -2 x) (* -1 (/ (+ (* 5 y) (* x (+ t (* 2 y)))) z)))))
(* -1 (* z (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 y))) z)))))
(* -1 (* z (- (* -1 (/ (+ t (* 2 y)) z)) 2)))
(* -1 (* z (- (* -2 (/ y z)) 2)))
(* -1 (* z (- (* -1 (/ y z)) 2)))
(+ (* 5 y) (* x (+ (* 2 y) (* 2 z))))
(+ (* 5 y) (+ (* t x) (* x (+ (* 2 y) (* 2 z)))))
(* x (+ (* 2 y) (* 2 z)))
(+ (* t x) (* x (+ (* 2 y) (* 2 z))))
(* t x)
(* t (+ x (+ (* 5 (/ y t)) (/ (* x (+ (* 2 y) (* 2 z))) t))))
(* t (+ x (/ (* x (+ (* 2 y) (* 2 z))) t)))
t
(* t (+ 1 (+ (* 2 (/ y t)) (* 2 (/ z t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (+ (* 5 y) (* x (+ (* 2 y) (* 2 z)))) t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (* x (+ (* 2 y) (* 2 z))) t)))))
(* -1 (* t (- (* -1 (/ (+ (* 2 y) (* 2 z)) t)) 1)))
Calls

12 calls:

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

simplify1.0ms (0.1%)

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

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Compiler

Compiled 202 to 26 computations (87.1% saved)

prune2.0ms (0.1%)

Memory
6.1MiB live, 6.1MiB allocated
Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New6410
Fresh000
Picked011
Done000
Total6511
Accuracy
99.9%
Counts
11 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.1%
(+.f64 #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.0%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
5.7%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
74.8%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
Compiler

Compiled 111 to 78 computations (29.7% saved)

simplify1.0ms (0.1%)

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

Found 15 expressions of interest:

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

localize39.0ms (3%)

Memory
-2.7MiB live, 74.6MiB allocated
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
accuracy0.01953125
(+.f64 (+.f64 (+.f64 y z) z) y)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy0.05859375
(+.f64 #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
accuracy61.787374140730684
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
accuracy0.0
(+.f64 y z)
accuracy0.01953125
(+.f64 (+.f64 (+.f64 y z) z) y)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy60.171139955302834
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
accuracy0.0
(+.f64 y z)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy60.323981898398564
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
accuracy0.015625
(*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
accuracy0.01953125
(+.f64 (+.f64 (+.f64 y z) z) y)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy16.11160528656987
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
Samples
23.0ms242×0valid
2.0ms11×1valid
1.0ms2valid
Compiler

Compiled 384 to 38 computations (90.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-add: 6.0ms (57.2% of total)
ival-mult: 3.0ms (28.6% of total)
adjust: 1.0ms (9.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series8.0ms (0.6%)

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

12 calls:

TimeVariablePointExpression
1.0ms
x
@inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (+ y z) z) (+ y z) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)))
1.0ms
x
@-inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (+ y z) z) (+ y z) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)))
1.0ms
y
@-inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (+ y z) z) (+ y z) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)))
1.0ms
x
@0
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (+ y z) z) (+ y z) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)))
1.0ms
z
@-inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (+ y z) z) (+ y z) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)))

simplify1.0ms (0.1%)

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

rewrite1.0ms (0%)

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

eval6.0ms (0.5%)

Memory
-32.2MiB live, 5.7MiB allocated
Compiler

Compiled 829 to 40 computations (95.2% saved)

prune5.0ms (0.4%)

Memory
9.7MiB live, 9.7MiB allocated
Pruning

7 alts after pruning (2 fresh and 5 done)

PrunedKeptTotal
New25227
Fresh000
Picked044
Done011
Total25732
Accuracy
99.9%
Counts
32 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.1%
(+.f64 #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.0%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
5.7%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
5.7%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
74.8%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
5.8%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
Compiler

Compiled 167 to 110 computations (34.1% saved)

simplify1.0ms (0%)

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

Found 6 expressions of interest:

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

localize31.0ms (2.4%)

Memory
14.5MiB live, 56.2MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 y z)
accuracy60.324651212007325
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
accuracy0.01953125
(+.f64 (+.f64 (+.f64 y z) z) y)
accuracy0.0234375
(+.f64 (+.f64 y z) z)
accuracy16.11160528656987
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
accuracy61.787374140730684
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
Samples
21.0ms242×0valid
2.0ms11×1valid
1.0ms2valid
Compiler

Compiled 184 to 33 computations (82.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-add: 6.0ms (58.4% of total)
ival-mult: 3.0ms (29.2% of total)
adjust: 1.0ms (9.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series8.0ms (0.7%)

Memory
-25.2MiB live, 13.1MiB allocated
Counts
7 → 62
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
(+.f64 (+.f64 (+.f64 y z) z) y)
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
(+.f64 y z)
(+.f64 (+.f64 y z) z)
Outputs
(* 5 y)
(+ (* 5 y) (* x (+ t (+ (* 2 y) (* 2 z)))))
(* x (+ t (+ (* 2 y) (* 2 z))))
(* x (+ t (+ (* 2 y) (+ (* 2 z) (* 5 (/ y x))))))
(* -1 (* x (+ (* -5 (/ y x)) (* -1 (+ t (+ (* 2 y) (* 2 z)))))))
(* x (+ t (* 2 z)))
(+ (* x (+ t (* 2 z))) (* y (+ 5 (* 2 x))))
(+ (* 2 (* x y)) (* x (+ t (* 2 z))))
(+ t (* 2 z))
(+ t (+ (* 2 y) (* 2 z)))
(* 2 z)
(+ (* 2 y) (* 2 z))
z
(+ y z)
(+ y (* 2 z))
(* y (+ 5 (* 2 x)))
(* y (+ 5 (+ (* 2 x) (/ (* x (+ t (* 2 z))) y))))
(* 2 (* x y))
(* y (+ (* 2 x) (/ (* x (+ t (* 2 z))) y)))
(* 2 y)
(* y (+ 2 (+ (* 2 (/ z y)) (/ t y))))
(* y (+ 2 (* 2 (/ z y))))
y
(* y (+ 1 (/ z y)))
(* y (+ 1 (* 2 (/ z y))))
(* -1 (* y (- (* -2 x) 5)))
(* -1 (* y (- (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y))) 5)))
(* -1 (* y (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y)))))
(* -1 (* y (- (* -1 (/ (+ t (* 2 z)) y)) 2)))
(* -1 (* y (- (* -2 (/ z y)) 2)))
(* -1 (* y (- (* -1 (/ z y)) 1)))
(* -1 (* y (- (* -2 (/ z y)) 1)))
(+ (* 5 y) (* x (+ t (* 2 y))))
(+ (* 2 (* x z)) (+ (* 5 y) (* x (+ t (* 2 y)))))
(* x (+ t (* 2 y)))
(+ (* 2 (* x z)) (* x (+ t (* 2 y))))
(+ t (* 2 y))
(* 2 (* x z))
(* z (+ (* 2 x) (+ (* 5 (/ y z)) (/ (* x (+ t (* 2 y))) z))))
(* z (+ (* 2 x) (/ (* x (+ t (* 2 y))) z)))
(* z (+ 2 (+ (* 2 (/ y z)) (/ t z))))
(* z (+ 2 (* 2 (/ y z))))
(* z (+ 1 (/ y z)))
(* z (+ 2 (/ y z)))
(* -1 (* z (+ (* -2 x) (* -1 (/ (+ (* 5 y) (* x (+ t (* 2 y)))) z)))))
(* -1 (* z (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 y))) z)))))
(* -1 (* z (- (* -1 (/ (+ t (* 2 y)) z)) 2)))
(* -1 (* z (- (* -2 (/ y z)) 2)))
(* -1 (* z (- (* -1 (/ y z)) 1)))
(* -1 (* z (- (* -1 (/ y z)) 2)))
(+ (* 5 y) (* x (+ (* 2 y) (* 2 z))))
(+ (* 5 y) (+ (* t x) (* x (+ (* 2 y) (* 2 z)))))
(* x (+ (* 2 y) (* 2 z)))
(+ (* t x) (* x (+ (* 2 y) (* 2 z))))
(* t x)
(* t (+ x (+ (* 5 (/ y t)) (/ (* x (+ (* 2 y) (* 2 z))) t))))
(* t (+ x (/ (* x (+ (* 2 y) (* 2 z))) t)))
t
(* t (+ 1 (+ (* 2 (/ y t)) (* 2 (/ z t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (+ (* 5 y) (* x (+ (* 2 y) (* 2 z)))) t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (* x (+ (* 2 y) (* 2 z))) t)))))
(* -1 (* t (- (* -1 (/ (+ (* 2 y) (* 2 z)) t)) 1)))
Calls

12 calls:

TimeVariablePointExpression
2.0ms
z
@inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ y z) (+ (+ y z) z))
1.0ms
x
@inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ y z) (+ (+ y z) z))
1.0ms
x
@-inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ y z) (+ (+ y z) z))
1.0ms
x
@0
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ y z) (+ (+ y z) z))
1.0ms
z
@-inf
((+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (* x (+ (+ (+ (+ y z) z) y) t)) (+ (+ (+ (+ y z) z) y) t) (+ (+ (+ y z) z) y) (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+ y z) (+ (+ y z) z))

simplify1.0ms (0.1%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
egg-herbie
Counts
62 → 7
Calls
Call 1
Inputs
(* 5 y)
(+ (* 5 y) (* x (+ t (+ (* 2 y) (* 2 z)))))
(* x (+ t (+ (* 2 y) (* 2 z))))
(* x (+ t (+ (* 2 y) (+ (* 2 z) (* 5 (/ y x))))))
(* -1 (* x (+ (* -5 (/ y x)) (* -1 (+ t (+ (* 2 y) (* 2 z)))))))
(* x (+ t (* 2 z)))
(+ (* x (+ t (* 2 z))) (* y (+ 5 (* 2 x))))
(+ (* 2 (* x y)) (* x (+ t (* 2 z))))
(+ t (* 2 z))
(+ t (+ (* 2 y) (* 2 z)))
(* 2 z)
(+ (* 2 y) (* 2 z))
z
(+ y z)
(+ y (* 2 z))
(* y (+ 5 (* 2 x)))
(* y (+ 5 (+ (* 2 x) (/ (* x (+ t (* 2 z))) y))))
(* 2 (* x y))
(* y (+ (* 2 x) (/ (* x (+ t (* 2 z))) y)))
(* 2 y)
(* y (+ 2 (+ (* 2 (/ z y)) (/ t y))))
(* y (+ 2 (* 2 (/ z y))))
y
(* y (+ 1 (/ z y)))
(* y (+ 1 (* 2 (/ z y))))
(* -1 (* y (- (* -2 x) 5)))
(* -1 (* y (- (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y))) 5)))
(* -1 (* y (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 z))) y)))))
(* -1 (* y (- (* -1 (/ (+ t (* 2 z)) y)) 2)))
(* -1 (* y (- (* -2 (/ z y)) 2)))
(* -1 (* y (- (* -1 (/ z y)) 1)))
(* -1 (* y (- (* -2 (/ z y)) 1)))
(+ (* 5 y) (* x (+ t (* 2 y))))
(+ (* 2 (* x z)) (+ (* 5 y) (* x (+ t (* 2 y)))))
(* x (+ t (* 2 y)))
(+ (* 2 (* x z)) (* x (+ t (* 2 y))))
(+ t (* 2 y))
(* 2 (* x z))
(* z (+ (* 2 x) (+ (* 5 (/ y z)) (/ (* x (+ t (* 2 y))) z))))
(* z (+ (* 2 x) (/ (* x (+ t (* 2 y))) z)))
(* z (+ 2 (+ (* 2 (/ y z)) (/ t z))))
(* z (+ 2 (* 2 (/ y z))))
(* z (+ 1 (/ y z)))
(* z (+ 2 (/ y z)))
(* -1 (* z (+ (* -2 x) (* -1 (/ (+ (* 5 y) (* x (+ t (* 2 y)))) z)))))
(* -1 (* z (+ (* -2 x) (* -1 (/ (* x (+ t (* 2 y))) z)))))
(* -1 (* z (- (* -1 (/ (+ t (* 2 y)) z)) 2)))
(* -1 (* z (- (* -2 (/ y z)) 2)))
(* -1 (* z (- (* -1 (/ y z)) 1)))
(* -1 (* z (- (* -1 (/ y z)) 2)))
(+ (* 5 y) (* x (+ (* 2 y) (* 2 z))))
(+ (* 5 y) (+ (* t x) (* x (+ (* 2 y) (* 2 z)))))
(* x (+ (* 2 y) (* 2 z)))
(+ (* t x) (* x (+ (* 2 y) (* 2 z))))
(* t x)
(* t (+ x (+ (* 5 (/ y t)) (/ (* x (+ (* 2 y) (* 2 z))) t))))
(* t (+ x (/ (* x (+ (* 2 y) (* 2 z))) t)))
t
(* t (+ 1 (+ (* 2 (/ y t)) (* 2 (/ z t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (+ (* 5 y) (* x (+ (* 2 y) (* 2 z)))) t)))))
(* -1 (* t (+ (* -1 x) (* -1 (/ (* x (+ (* 2 y) (* 2 z))) t)))))
(* -1 (* t (- (* -1 (/ (+ (* 2 y) (* 2 z)) t)) 1)))
Outputs
(* 5 y)
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
(+ (* 5 y) (* x (+ t (+ (* 2 y) (* 2 z)))))
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
(* x (+ t (+ (* 2 y) (* 2 z))))
(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
(* x (+ t (+ (* 2 y) (+ (* 2 z) (* 5 (/ y x))))))
(+.f64 (+.f64 (+.f64 y z) z) y)
(* -1 (* x (+ (* -5 (/ y x)) (* -1 (+ t (+ (* 2 y) (* 2 z)))))))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
(* x (+ t (* 2 z)))
(+.f64 y z)
(+ (* x (+ t (* 2 z))) (* y (+ 5 (* 2 x))))
(+.f64 (+.f64 y z) z)

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
7 → 7
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
(+.f64 (+.f64 (+.f64 y z) z) y)
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
(+.f64 y z)
(+.f64 (+.f64 y z) z)
Outputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
#s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t))
(+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)
(+.f64 (+.f64 (+.f64 y z) z) y)
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
(+.f64 y z)
(+.f64 (+.f64 y z) z)

eval1.0ms (0.1%)

Memory
2.7MiB live, 2.7MiB allocated
Compiler

Compiled 392 to 23 computations (94.1% saved)

prune4.0ms (0.3%)

Memory
8.7MiB live, 8.7MiB allocated
Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New12012
Fresh000
Picked022
Done055
Total12719
Accuracy
99.9%
Counts
19 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.1%
(+.f64 #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.0%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
5.7%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
5.7%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
74.8%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
5.8%
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
Compiler

Compiled 334 to 137 computations (59% saved)

regimes15.0ms (1.2%)

Memory
-12.9MiB live, 25.5MiB allocated
Counts
7 → 1
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
(+.f64 #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Outputs
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Calls

5 calls:

4.0ms
x
3.0ms
z
3.0ms
y
3.0ms
t
3.0ms
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Results
AccuracySegmentsBranch
99.9%1x
99.9%1y
99.9%1z
99.9%1t
99.9%1(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Compiler

Compiled 19 to 28 computations (-47.4% saved)

regimes13.0ms (1%)

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

5 calls:

3.0ms
y
2.0ms
z
2.0ms
t
2.0ms
x
2.0ms
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Results
AccuracySegmentsBranch
74.8%1x
74.8%1y
74.8%1z
74.8%1t
74.8%1(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Compiler

Compiled 19 to 28 computations (-47.4% saved)

regimes13.0ms (1%)

Memory
-15.3MiB live, 22.2MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) #s(approx (* x (+ (+ (+ (+ y z) z) y) t)) (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)))
Outputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 (+.f64 y z) z) y))
Calls

5 calls:

4.0ms
t
2.0ms
y
2.0ms
z
2.0ms
x
2.0ms
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
Results
AccuracySegmentsBranch
6.0%1y
6.0%1(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
6.0%1z
6.0%1t
6.0%1x
Compiler

Compiled 19 to 28 computations (-47.4% saved)

regimes7.0ms (0.6%)

Memory
17.2MiB live, 17.2MiB allocated
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
Outputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 (+.f64 y z) z))
Calls

5 calls:

1.0ms
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
1.0ms
y
1.0ms
t
1.0ms
z
1.0ms
x
Results
AccuracySegmentsBranch
5.7%1z
5.7%1t
5.7%1(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
5.7%1y
5.7%1x
Compiler

Compiled 19 to 28 computations (-47.4% saved)

regimes11.0ms (0.9%)

Memory
-26.4MiB live, 15.1MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
Outputs
#s(approx (+ (* x (+ (+ (+ (+ y z) z) y) t)) (* y 5)) (+.f64 y z))
Calls

5 calls:

6.0ms
y
1.0ms
(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
1.0ms
t
1.0ms
x
1.0ms
z
Results
AccuracySegmentsBranch
5.7%1(+.f64 (*.f64 x (+.f64 (+.f64 (+.f64 (+.f64 y z) z) y) t)) (*.f64 y #s(literal 5 binary64)))
5.7%1t
5.7%1y
5.7%1z
5.7%1x
Compiler

Compiled 19 to 28 computations (-47.4% saved)

simplify5.0ms (0.4%)

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

soundness1.0ms (0.1%)

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

Compiled 105 to 24 computations (77.1% saved)

preprocess29.0ms (2.3%)

Memory
16.3MiB live, 54.0MiB allocated
Compiler

Compiled 240 to 72 computations (70% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...