Data.Colour.CIE:cieLAB from colour-2.3.3, A

Time bar (total: 968.0ms)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

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

Compiled 11 to 11 computations (0% saved)

sample664.0ms (68.6%)

Memory
-18.5MiB live, 1 009.4MiB allocated
Samples
409.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 240.0ms
ival-mult: 97.0ms (40.5% of total)
ival-div: 72.0ms (30% of total)
ival-sub: 51.0ms (21.3% of total)
exact: 11.0ms (4.6% of total)
ival-true: 6.0ms (2.5% of total)
ival-assert: 3.0ms (1.3% of total)
Bogosity

explain88.0ms (9%)

Memory
8.5MiB live, 169.2MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-#s(literal 3 binary64)
00-0-#s(literal 16 binary64)
00-0-#s(literal 116 binary64)
00-0-(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
00-0-(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
00-0-(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
00-0-y
00-0-(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
00-0-x
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
28.0ms486×0valid
4.0ms12×2valid
1.0ms14×1valid
Compiler

Compiled 100 to 40 computations (60% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
ival-mult: 8.0ms (41.1% of total)
ival-sub: 5.0ms (25.7% of total)
ival-div: 4.0ms (20.6% of total)
exact: 1.0ms (5.1% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess3.0ms (0.3%)

Memory
5.8MiB live, 5.8MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Outputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Compiler

Compiled 9 to 9 computations (0% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Compiler

Compiled 9 to 9 computations (0% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize22.0ms (2.3%)

Memory
-4.6MiB live, 33.9MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
accuracy0.00390625
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
accuracy0.0703125
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
accuracy0.12109375
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Samples
14.0ms243×0valid
1.0ms2valid
1.0ms1valid
Compiler

Compiled 60 to 20 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-div: 4.0ms (45.4% of total)
ival-mult: 3.0ms (34% of total)
ival-sub: 1.0ms (11.3% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series4.0ms (0.4%)

Memory
6.0MiB live, 6.0MiB allocated
Counts
4 → 16
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
Outputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
-4/29
(- x 4/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
x
(* x (- 1 (* 4/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* -1 (* x (- (* 4/29 (/ 1 x)) 1)))
(* 3 (* y (- x 4/29)))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
1.0ms
x
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
1.0ms
y
@0
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
1.0ms
x
@0
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
1.0ms
y
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))

simplify0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Counts
16 → 4
Calls
Call 1
Inputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
-4/29
(- x 4/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
x
(* x (- 1 (* 4/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* -1 (* x (- (* 4/29 (/ 1 x)) 1)))
(* 3 (* y (- x 4/29)))
Outputs
(* -12/29 y)
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
(+ (* -12/29 y) (* 3 (* x y)))
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
-12/29
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(- (* 3 x) 12/29)
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
1.8MiB live, 1.8MiB allocated
Compiler

Compiled 100 to 22 computations (78% saved)

prune1.0ms (0.1%)

Memory
2.8MiB live, 2.7MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New628
Fresh000
Picked011
Done000
Total639
Accuracy
99.8%
Counts
9 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.8%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
28.0%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
Compiler

Compiled 37 to 36 computations (2.7% saved)

simplify1.0ms (0.1%)

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

Found 7 expressions of interest:

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

localize25.0ms (2.6%)

Memory
0.0MiB live, 37.9MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
accuracy0.12109375
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
accuracy62.55512050077103
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
accuracy0.0
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
accuracy0.00390625
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
accuracy0.12109375
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
accuracy52.64775770649112
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
Samples
14.0ms243×0valid
1.0ms2valid
1.0ms1valid
Compiler

Compiled 122 to 27 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-mult: 3.0ms (41.1% of total)
ival-div: 2.0ms (27.4% of total)
ival-sub: 1.0ms (13.7% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series4.0ms (0.4%)

Memory
-33.0MiB live, 5.5MiB allocated
Counts
6 → 16
Calls
Call 1
Inputs
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Outputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
-4/29
(- x 4/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
x
(* x (- 1 (* 4/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* -1 (* x (- (* 4/29 (/ 1 x)) 1)))
(* 3 (* y (- x 4/29)))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
y
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116) (* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3))
0.0ms
x
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116) (* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3))
0.0ms
x
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116) (* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3))
0.0ms
y
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116) (* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3))
0.0ms
x
@0
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116) (* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3))

simplify0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Counts
16 → 6
Calls
Call 1
Inputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
-4/29
(- x 4/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
x
(* x (- 1 (* 4/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* -1 (* x (- (* 4/29 (/ 1 x)) 1)))
(* 3 (* y (- x 4/29)))
Outputs
(* -12/29 y)
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
(+ (* -12/29 y) (* 3 (* x y)))
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
-12/29
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(- (* 3 x) 12/29)
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
-4/29
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
(- x 4/29)
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))

rewrite0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Outputs
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))

eval1.0ms (0.1%)

Memory
3.2MiB live, 3.2MiB allocated
Compiler

Compiled 203 to 25 computations (87.7% saved)

prune2.0ms (0.2%)

Memory
5.6MiB live, 5.6MiB allocated
Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New10111
Fresh000
Picked022
Done011
Total10414
Accuracy
99.8%
Counts
14 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.8%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
28.0%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
3.5%
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
Compiler

Compiled 60 to 51 computations (15% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

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

localize25.0ms (2.6%)

Memory
-12.1MiB live, 39.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
accuracy0.00390625
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
accuracy52.64775770649112
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
accuracy61.75096228395944
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
Samples
18.0ms243×0valid
1.0ms2valid
1.0ms1valid
Compiler

Compiled 76 to 26 computations (65.8% saved)

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

series2.0ms (0.2%)

Memory
4.3MiB live, 4.3MiB allocated
Counts
4 → 16
Calls
Call 1
Inputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
Outputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
-4/29
(- x 4/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
x
(* x (- 1 (* 4/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* -1 (* x (- (* 4/29 (/ 1 x)) 1)))
(* 3 (* y (- x 4/29)))
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
0.0ms
x
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
0.0ms
y
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
0.0ms
x
@0
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))
0.0ms
y
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (- x (/ 16 116)) (/ 16 116))

simplify0.0ms (0%)

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

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
Outputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
#s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))

eval1.0ms (0.1%)

Memory
1.4MiB live, 1.4MiB allocated
Compiler

Compiled 146 to 18 computations (87.7% saved)

prune3.0ms (0.3%)

Memory
6.1MiB live, 6.1MiB allocated
Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New516
Fresh000
Picked011
Done033
Total5510
Accuracy
99.8%
Counts
10 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.8%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
28.0%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
3.4%
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
3.5%
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
Compiler

Compiled 81 to 65 computations (19.8% saved)

simplify0.0ms (0%)

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

Found 3 expressions of interest:

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

localize20.0ms (2.1%)

Memory
-3.8MiB live, 34.4MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
accuracy61.75096228395944
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
accuracy62.55512050077103
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Samples
13.0ms243×0valid
1.0ms2valid
1.0ms1valid
Compiler

Compiled 60 to 25 computations (58.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-mult: 4.0ms (47.5% of total)
ival-div: 2.0ms (23.7% of total)
ival-sub: 1.0ms (11.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series2.0ms (0.2%)

Memory
5.6MiB live, 5.6MiB allocated
Counts
3 → 11
Calls
Call 1
Inputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))
Outputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* 3 (* y (- x 4/29)))
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@0
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (/ 16 116))
0.0ms
x
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (/ 16 116))
0.0ms
x
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (/ 16 116))
0.0ms
y
@inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (/ 16 116))
0.0ms
y
@-inf
((* (* (- x (/ 16 116)) 3) y) (* (- x (/ 16 116)) 3) (/ 16 116))

simplify0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
egg-herbie
Counts
11 → 3
Calls
Call 1
Inputs
(* -12/29 y)
(+ (* -12/29 y) (* 3 (* x y)))
-12/29
(- (* 3 x) 12/29)
(* 3 (* x y))
(* x (+ (* -12/29 (/ y x)) (* 3 y)))
(* 3 x)
(* x (- 3 (* 12/29 (/ 1 x))))
(* -1 (* x (+ (* -3 y) (* 12/29 (/ y x)))))
(* -1 (* x (- (* 12/29 (/ 1 x)) 3)))
(* 3 (* y (- x 4/29)))
Outputs
(* -12/29 y)
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
(+ (* -12/29 y) (* 3 (* x y)))
#s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
-12/29
(/.f64 #s(literal 16 binary64) #s(literal 116 binary64))

rewrite0.0ms (0%)

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

eval1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Compiler

Compiled 94 to 15 computations (84% saved)

prune4.0ms (0.4%)

Memory
8.7MiB live, 8.7MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New404
Fresh000
Picked011
Done044
Total459
Accuracy
99.8%
Counts
9 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.8%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
28.0%
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
3.4%
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
3.5%
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
Compiler

Compiled 162 to 87 computations (46.3% saved)

regimes13.0ms (1.4%)

Memory
-13.7MiB live, 25.2MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Outputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
Calls

5 calls:

3.0ms
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
2.0ms
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.0ms
x
2.0ms
y
2.0ms
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
99.8%1x
99.8%1y
99.8%1(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
99.8%1(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
99.8%1(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Compiler

Compiled 23 to 27 computations (-17.4% saved)

regimes11.0ms (1.2%)

Memory
-18.5MiB live, 20.5MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))))
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) y)
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
Outputs
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
Calls

5 calls:

3.0ms
y
2.0ms
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.0ms
x
2.0ms
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
2.0ms
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
Results
AccuracySegmentsBranch
28.0%1x
28.0%1y
28.0%1(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
28.0%1(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
28.0%1(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Compiler

Compiled 23 to 27 computations (-17.4% saved)

regimes9.0ms (0.9%)

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

5 calls:

2.0ms
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
2.0ms
y
2.0ms
x
2.0ms
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
2.0ms
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Results
AccuracySegmentsBranch
3.5%1(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
3.5%1(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
3.5%1x
3.5%1(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
5.1%2y
Compiler

Compiled 23 to 27 computations (-17.4% saved)

regimes6.0ms (0.6%)

Memory
12.9MiB live, 12.9MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

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

5 calls:

1.0ms
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
1.0ms
x
1.0ms
(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
1.0ms
y
1.0ms
(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
Results
AccuracySegmentsBranch
3.4%1x
3.4%1(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
3.4%1(*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64))
3.4%1(-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))
3.4%1y
Compiler

Compiled 23 to 27 computations (-17.4% saved)

bsearch14.0ms (1.4%)

Memory
-24.8MiB live, 14.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
12.0ms
1.4650801907543252e-210
1.838406828157676e-208
Samples
8.0ms112×0valid
Compiler

Compiled 320 to 231 computations (27.8% saved)

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

simplify4.0ms (0.4%)

Memory
8.6MiB live, 8.6MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
(if (<=.f64 y #s(literal 2220894945574821/1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656 binary64)) #s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) #s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))))
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))
Outputs
(*.f64 (*.f64 (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))) #s(literal 3 binary64)) y)
(*.f64 #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) y)
(if (<=.f64 y #s(literal 2220894945574821/1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656 binary64)) #s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64)))) #s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (-.f64 x (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))))
#s(approx (* (* (- x (/ 16 116)) 3) y) #s(approx (* (- x (/ 16 116)) 3) (/.f64 #s(literal 16 binary64) #s(literal 116 binary64))))

soundness1.0ms (0.1%)

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

Compiled 93 to 24 computations (74.2% saved)

preprocess33.0ms (3.5%)

Memory
13.8MiB live, 50.8MiB allocated
Compiler

Compiled 218 to 80 computations (63.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...