Numeric.Signal.Multichannel:$cget from hsignal-0.2.7.1

Time bar (total: 1.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze51.0ms (4.2%)

Memory
-2.6MiB live, 115.0MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
50%49.9%49.9%0.2%0%0%0%3
50%49.9%49.9%0.2%0%0%0%4
50%49.9%49.9%0.2%0%0%0%5
50%49.9%49.9%0.2%0%0%0%6
75%74.9%25%0.2%0%0%0%7
75%74.9%25%0.2%0%0%0%8
75%74.9%25%0.2%0%0%0%9
75%74.9%25%0.2%0%0%0%10
87.5%87.3%12.5%0.2%0%0%0%11
87.5%87.3%12.5%0.2%0%0%0%12
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample743.0ms (61.3%)

Memory
-16.1MiB live, 1 319.9MiB allocated
Samples
463.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 252.0ms
ival-div: 78.0ms (30.9% of total)
ival-mult: 62.0ms (24.6% of total)
ival-sub: 53.0ms (21% of total)
ival-add: 49.0ms (19.4% of total)
ival-true: 7.0ms (2.8% of total)
ival-assert: 4.0ms (1.6% of total)
Bogosity

explain83.0ms (6.8%)

Memory
1.8MiB live, 202.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
290-1(-2.607213039755097e-176 5.142024769253224e+141 7.376417955016705e-23 1.625528579643405e+73)(*.f64 (/.f64 x y) (-.f64 z t))
00-0-(/.f64 x y)
00-0-(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
00-0-y
00-0-(-.f64 z t)
00-0-t
00-0-z
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
*.f64(*.f64 (/.f64 x y) (-.f64 z t))n*o100
*.f64(*.f64 (/.f64 x y) (-.f64 z t))n*u10
Confusion
Predicted +Predicted -
+100
-1245
Precision
0.9090909090909091
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+1000
-10245
Precision?
0.9090909090909091
Recall?
1.0
Freqs
test
numberfreq
0245
111
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
33.0ms512×0valid
Compiler

Compiled 91 to 36 computations (60.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-div: 6.0ms (39.5% of total)
ival-sub: 3.0ms (19.7% of total)
ival-mult: 3.0ms (19.7% of total)
ival-add: 2.0ms (13.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess4.0ms (0.3%)

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

Compiled 9 to 8 computations (11.1% saved)

eval0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.3%
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Compiler

Compiled 9 to 8 computations (11.1% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize22.0ms (1.8%)

Memory
-21.4MiB live, 57.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 x y)
accuracy0.0
(-.f64 z t)
accuracy0.00390625
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
accuracy6.801177763727388
(*.f64 (/.f64 x y) (-.f64 z t))
Samples
17.0ms256×0valid
Compiler

Compiled 54 to 18 computations (66.7% saved)

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

series15.0ms (1.2%)

Memory
-16.1MiB live, 30.0MiB allocated
Counts
4 → 33
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
(*.f64 (/.f64 x y) (-.f64 z t))
(/.f64 x y)
(-.f64 z t)
Outputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Calls

12 calls:

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

simplify0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Counts
33 → 4
Calls
Call 1
Inputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Outputs
t
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
(+ t (* x (- (/ z y) (/ t y))))
(*.f64 (/.f64 x y) (-.f64 z t))
(/ (* x (- z t)) y)
(/.f64 x y)
(/ x y)
(-.f64 z t)

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
2.1MiB live, 2.1MiB allocated
Compiler

Compiled 98 to 19 computations (80.6% saved)

prune1.0ms (0.1%)

Memory
4.2MiB live, 4.2MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
96.3%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.3%
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
17.5%
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
42.5%
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
57.5%
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
Compiler

Compiled 52 to 39 computations (25% saved)

simplify1.0ms (0%)

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

Found 11 expressions of interest:

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

localize26.0ms (2.2%)

Memory
23.2MiB live, 62.5MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 z t)
accuracy0.00390625
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
accuracy6.801177763727388
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
accuracy62.1135925407787
#s(approx (/ x y) (-.f64 z t))
accuracy0.0
(/.f64 x y)
accuracy0.00390625
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
accuracy54.1598875112631
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
accuracy0.0
(/.f64 x y)
accuracy0.0
(-.f64 z t)
accuracy6.801177763727388
(*.f64 (/.f64 x y) (-.f64 z t))
accuracy24.840527137016224
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
Samples
18.0ms256×0valid
Compiler

Compiled 174 to 27 computations (84.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-div: 3.0ms (40.1% of total)
ival-mult: 2.0ms (26.7% of total)
ival-sub: 1.0ms (13.4% of total)
ival-add: 1.0ms (13.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series8.0ms (0.7%)

Memory
-24.7MiB live, 14.3MiB allocated
Counts
9 → 33
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(*.f64 (/.f64 x y) (-.f64 z t))
(/.f64 x y)
(-.f64 z t)
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
#s(approx (/ x y) (-.f64 z t))
Outputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Calls

12 calls:

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

simplify1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
egg-herbie
Counts
33 → 9
Calls
Call 1
Inputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Outputs
t
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(+ t (* x (- (/ z y) (/ t y))))
(*.f64 (/.f64 x y) (-.f64 z t))
(/ (* x (- z t)) y)
(/.f64 x y)
(/ x y)
(-.f64 z t)
(* x (- (/ z y) (/ t y)))
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
(/ (+ (* t y) (* x (- z t))) y)
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
(+ t (/ (* x (- z t)) y))
#s(approx (/ x y) (-.f64 z t))

rewrite0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Counts
9 → 9
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(*.f64 (/.f64 x y) (-.f64 z t))
(/.f64 x y)
(-.f64 z t)
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
#s(approx (/ x y) (-.f64 z t))
Outputs
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(*.f64 (/.f64 x y) (-.f64 z t))
(/.f64 x y)
(-.f64 z t)
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
#s(approx (/ x y) (-.f64 z t))

eval2.0ms (0.2%)

Memory
5.4MiB live, 5.4MiB allocated
Compiler

Compiled 337 to 25 computations (92.6% saved)

prune3.0ms (0.3%)

Memory
6.5MiB live, 6.5MiB allocated
Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New15419
Fresh000
Picked033
Done011
Total15823
Accuracy
96.3%
Counts
23 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.3%
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
17.5%
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
42.5%
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
2.8%
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
57.5%
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
11.6%
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
2.6%
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
8.2%
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
Compiler

Compiled 128 to 84 computations (34.4% saved)

simplify1.0ms (0.1%)

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

Found 14 expressions of interest:

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

localize28.0ms (2.3%)

Memory
9.7MiB live, 47.6MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 z t)
accuracy0.00390625
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
accuracy54.1598875112631
#s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t)))
accuracy62.1135925407787
#s(approx (/ x y) (-.f64 z t))
accuracy0.0
(-.f64 z t)
accuracy6.801177763727388
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
accuracy24.840527137016224
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
accuracy62.1135925407787
#s(approx (/ x y) (-.f64 z t))
accuracy0.0
(-.f64 z t)
accuracy58.77250475361508
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
accuracy62.1135925407787
#s(approx (/ x y) (-.f64 z t))
accuracy0.0
(/.f64 x y)
accuracy24.840527137016224
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
accuracy54.1598875112631
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
Samples
20.0ms256×0valid
Compiler

Compiled 242 to 28 computations (88.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 3.0ms (35.4% of total)
ival-div: 2.0ms (23.6% of total)
ival-sub: 1.0ms (11.8% of total)
ival-add: 1.0ms (11.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.9%)

Memory
-26.3MiB live, 14.6MiB allocated
Counts
10 → 33
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(/.f64 x y)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
#s(approx (/ x y) (-.f64 z t))
(-.f64 z t)
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t)))
Outputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Calls

12 calls:

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

simplify1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
egg-herbie
Counts
33 → 10
Calls
Call 1
Inputs
t
(+ t (* x (- (/ z y) (/ t y))))
(/ (* x (- z t)) y)
(/ x y)
(* x (- (/ z y) (/ t y)))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
(/ (+ (* t y) (* x (- z t))) y)
(+ t (/ (* x (- z t)) y))
(+ t (* -1 (/ (* t x) y)))
(+ t (+ (* -1 (/ (* t x) y)) (/ (* x z) y)))
(* -1 (/ (* t x) y))
(+ (* -1 (/ (* t x) y)) (/ (* x z) y))
(* -1 t)
(- z t)
(/ (* x z) y)
(* z (+ (* -1 (/ (* t x) (* y z))) (+ (/ t z) (/ x y))))
(* z (+ (* -1 (/ (* t x) (* y z))) (/ x y)))
z
(* z (+ 1 (* -1 (/ t z))))
(* -1 (* z (+ (* -1 (/ x y)) (* -1 (/ (+ t (* -1 (/ (* t x) y))) z)))))
(* -1 (* z (+ (* -1 (/ x y)) (/ (* t x) (* y z)))))
(* -1 (* z (- (/ t z) 1)))
(+ (* t (+ 1 (* -1 (/ x y)))) (/ (* x z) y))
(+ z (* -1 t))
(* t (+ 1 (* -1 (/ x y))))
(* t (+ 1 (+ (* -1 (/ x y)) (/ (* x z) (* t y)))))
(* t (+ (* -1 (/ x y)) (/ (* x z) (* t y))))
(* t (- (/ z t) 1))
(* -1 (* t (- (/ x y) 1)))
(* -1 (* t (- (+ (* -1 (/ (* x z) (* t y))) (/ x y)) 1)))
(* -1 (* t (+ (* -1 (/ (* x z) (* t y))) (/ x y))))
(* -1 (* t (+ 1 (* -1 (/ z t)))))
Outputs
t
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
(+ t (* x (- (/ z y) (/ t y))))
#s(approx (* (/ x y) (- z t)) (/.f64 x y))
(/ (* x (- z t)) y)
(/.f64 x y)
(/ x y)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
(* x (- (/ z y) (/ t y)))
#s(approx (/ x y) (-.f64 z t))
(* x (- (+ (/ t x) (/ z y)) (/ t y)))
(-.f64 z t)
(* -1 (* x (+ (* -1 (/ t x)) (* -1 (/ (- z t) y)))))
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
(/ (+ (* t y) (* x (- z t))) y)
(*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))
(+ t (/ (* x (- z t)) y))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
(+ t (* -1 (/ (* t x) y)))
#s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t)))

rewrite1.0ms (0%)

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

eval2.0ms (0.2%)

Memory
5.2MiB live, 5.2MiB allocated
Compiler

Compiled 453 to 26 computations (94.3% saved)

prune7.0ms (0.5%)

Memory
18.4MiB live, 18.4MiB allocated
Pruning

8 alts after pruning (0 fresh and 8 done)

PrunedKeptTotal
New21021
Fresh000
Picked044
Done044
Total21829
Accuracy
96.3%
Counts
29 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.3%
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
17.5%
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
42.5%
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
2.8%
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
57.5%
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
11.6%
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
2.6%
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
8.2%
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
Compiler

Compiled 256 to 107 computations (58.2% saved)

regimes23.0ms (1.9%)

Memory
-22.1MiB live, 55.1MiB allocated
Counts
8 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Outputs
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Calls

6 calls:

5.0ms
(/.f64 x y)
5.0ms
x
3.0ms
z
3.0ms
t
3.0ms
y
Results
AccuracySegmentsBranch
96.3%1x
96.3%1y
96.3%1z
96.3%1t
96.3%1(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
96.3%1(/.f64 x y)
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes20.0ms (1.7%)

Memory
-1.3MiB live, 37.0MiB allocated
Counts
7 → 3
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
(+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t)
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
Outputs
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t)
#s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))
Calls

6 calls:

5.0ms
x
3.0ms
t
3.0ms
y
3.0ms
z
3.0ms
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Results
AccuracySegmentsBranch
70.5%3x
71.6%3y
62.3%3z
69.6%7(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
81.6%3(/.f64 x y)
65.0%3t
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes16.0ms (1.3%)

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

6 calls:

3.0ms
t
3.0ms
x
3.0ms
y
3.0ms
z
2.0ms
(/.f64 x y)
Results
AccuracySegmentsBranch
42.5%1z
48.7%2(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
42.5%1t
42.5%1x
42.5%1y
44.4%2(/.f64 x y)
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes6.0ms (0.5%)

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

1 calls:

6.0ms
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Results
AccuracySegmentsBranch
48.7%2(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Compiler

Compiled 9 to 8 computations (11.1% saved)

regimes13.0ms (1.1%)

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

6 calls:

2.0ms
y
2.0ms
z
2.0ms
x
2.0ms
t
2.0ms
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Results
AccuracySegmentsBranch
11.6%1x
11.6%1z
11.6%1t
11.6%1y
11.6%1(/.f64 x y)
15.6%2(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes13.0ms (1.1%)

Memory
-13.3MiB live, 25.1MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
Outputs
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
Calls

6 calls:

4.0ms
(/.f64 x y)
2.0ms
t
2.0ms
y
2.0ms
z
2.0ms
x
Results
AccuracySegmentsBranch
8.2%1x
8.2%1z
8.2%1t
8.2%1(/.f64 x y)
8.2%1y
8.2%1(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes9.0ms (0.7%)

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

6 calls:

1.0ms
t
1.0ms
x
1.0ms
z
1.0ms
y
1.0ms
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
Results
AccuracySegmentsBranch
2.8%1(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
2.8%1t
2.8%1x
2.8%1(/.f64 x y)
2.8%1z
2.8%1y
Compiler

Compiled 16 to 29 computations (-81.3% saved)

regimes9.0ms (0.7%)

Memory
-19.6MiB live, 18.8MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

6 calls:

3.0ms
t
1.0ms
z
1.0ms
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
2.6%1x
2.6%1y
2.6%1(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
2.6%1z
2.6%1t
2.6%1(/.f64 x y)
Compiler

Compiled 16 to 29 computations (-81.3% saved)

bsearch27.0ms (2.3%)

Memory
2.9MiB live, 40.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
17.0ms
6.168833025977549e-17
227740.41271004442
9.0ms
-3.8149082432988004e-39
-7.155138857467683e-41
Samples
15.0ms288×0valid
Compiler

Compiled 480 to 411 computations (14.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-sub: 5.0ms (61.5% of total)
ival-mult: 2.0ms (24.6% of total)
ival-add: 1.0ms (12.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.306941234863036e+306
+inf
Compiler

Compiled 12 to 15 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.306941234863036e+306
+inf
Compiler

Compiled 12 to 15 computations (-25% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-6.045354209941649e-221
-7.910884118066249e-225
Compiler

Compiled 12 to 15 computations (-25% saved)

simplify5.0ms (0.4%)

Memory
10.5MiB live, 10.5MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
(if (<=.f64 (/.f64 x y) #s(literal -5026585374040115/6129982163463555433433388108601236734474956488734408704 binary64)) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t))) (if (<=.f64 (/.f64 x y) #s(literal 1624177331542419/39614081257132168796771975168 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal 9999999999999999860310597602564577717002641838126363875249660735883565852672743849064846414228960666786379280392654615393353172850252103336275952370615397010730691664689375178569039851073146339641623266071126720011020169553304018596457812688561947201171488461172921822139066929851282122002676667750021070848 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) (+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal 9999999999999999860310597602564577717002641838126363875249660735883565852672743849064846414228960666786379280392654615393353172850252103336275952370615397010730691664689375178569039851073146339641623266071126720011020169553304018596457812688561947201171488461172921822139066929851282122002676667750021070848 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal -5087291284850963/101745825697019260773923519755878567461315282017759829107608914364075275235254395622580447400994175578963163918967182013639660669771108475957692810857098847138903161308502419410142185759152435680068435915159402496058513611411689167650816 binary64)) #s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y))) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))))
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))
Outputs
(+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t)
(if (<=.f64 (/.f64 x y) #s(literal -5026585374040115/6129982163463555433433388108601236734474956488734408704 binary64)) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t))) (if (<=.f64 (/.f64 x y) #s(literal 1624177331542419/39614081257132168796771975168 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 (/.f64 x y) (-.f64 z t)))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal 9999999999999999860310597602564577717002641838126363875249660735883565852672743849064846414228960666786379280392654615393353172850252103336275952370615397010730691664689375178569039851073146339641623266071126720011020169553304018596457812688561947201171488461172921822139066929851282122002676667750021070848 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) (+.f64 (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t)) t))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal 9999999999999999860310597602564577717002641838126363875249660735883565852672743849064846414228960666786379280392654615393353172850252103336275952370615397010730691664689375178569039851073146339641623266071126720011020169553304018596457812688561947201171488461172921822139066929851282122002676667750021070848 binary64)) (+.f64 #s(approx (* (/ x y) (- z t)) (/.f64 x y)) t) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))))
(if (<=.f64 (+.f64 (*.f64 (/.f64 x y) (-.f64 z t)) t) #s(literal -5087291284850963/101745825697019260773923519755878567461315282017759829107608914364075275235254395622580447400994175578963163918967182013639660669771108475957692810857098847138903161308502419410142185759152435680068435915159402496058513611411689167650816 binary64)) #s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y))) #s(approx (+ (* (/ x y) (- z t)) t) (*.f64 #s(approx (/ x y) (-.f64 z t)) (-.f64 z t))))
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (* (/ x y) (- z t)) (/.f64 x y)))
(+.f64 #s(approx (* (/ x y) (- z t)) #s(approx (/ x y) (-.f64 z t))) t)
#s(approx (+ (* (/ x y) (- z t)) t) #s(approx (/ x y) (-.f64 z t)))

soundness2.0ms (0.2%)

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

Compiled 261 to 36 computations (86.2% saved)

preprocess56.0ms (4.6%)

Memory
-21.0MiB live, 96.2MiB allocated
Compiler

Compiled 610 to 122 computations (80% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...