Data.Colour.Matrix:inverse from colour-2.3.3, B

Time bar (total: 1.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze109.0ms (8.4%)

Memory
-12.5MiB live, 150.8MiB 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
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
50%49.9%49.9%0.2%0%0%0%6
50%49.9%49.9%0.2%0%0%0%7
50%49.9%49.9%0.2%0%0%0%8
50%49.9%49.9%0.2%0%0%0%9
50%49.9%49.9%0.2%0%0%0%10
75%74.8%24.9%0.2%0%0%0%11
75%74.8%24.9%0.2%0%0%0%12
Compiler

Compiled 11 to 11 computations (0% saved)

sample777.0ms (59.5%)

Memory
2.1MiB live, 1 151.7MiB allocated
Samples
448.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 215.0ms
ival-mult: 112.0ms (52.1% of total)
ival-div: 59.0ms (27.4% of total)
ival-sub: 35.0ms (16.3% of total)
ival-true: 6.0ms (2.8% of total)
ival-assert: 3.0ms (1.4% of total)
Bogosity

explain113.0ms (8.6%)

Memory
-16.7MiB live, 200.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
170-1(2.556909229182799e-141 6.394129798410403e-211 -1.756917679634965e-124 -2.033172449755403e-191 -3.673990254377027e-296)(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
20-0-(-.f64 (*.f64 x y) (*.f64 z t))
00-0-a
00-0-t
00-0-(*.f64 z t)
00-0-z
00-0-(*.f64 x y)
00-0-y
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)o/n140
(*.f64 x y)overflow28
(*.f64 z t)overflow32
(-.f64 (*.f64 x y) (*.f64 z t))overflow57
/.f64(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)u/n20
(*.f64 x y)underflow32
(*.f64 z t)underflow25
(-.f64 (*.f64 x y) (*.f64 z t))underflow5
-.f64(-.f64 (*.f64 x y) (*.f64 z t))nan-rescue20
(*.f64 x y)overflow28
(*.f64 z t)overflow32
Confusion
Predicted +Predicted -
+171
-0238
Precision
1.0
Recall
0.9444444444444444
Confusion?
Predicted +Predicted MaybePredicted -
+1701
-00238
Precision?
1.0
Recall?
0.9444444444444444
Freqs
test
numberfreq
0239
116
21
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
52.0ms512×0valid
Compiler

Compiled 94 to 40 computations (57.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
ival-mult: 19.0ms (69% of total)
ival-div: 5.0ms (18.2% of total)
ival-sub: 3.0ms (10.9% of total)
ival-true: 1.0ms (3.6% of total)
ival-assert: 0.0ms (0% of total)

preprocess8.0ms (0.6%)

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

Compiled 9 to 9 computations (0% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 5 computations (-∞% saved)

prune1.0ms (0.1%)

Memory
1.0MiB live, 1.1MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.4%
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
Compiler

Compiled 9 to 9 computations (0% saved)

simplify1.0ms (0%)

Memory
0.8MiB live, 0.8MiB 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)) a)
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
(-.f64 (*.f64 x y) (*.f64 z t))
(*.f64 x y)
x
y
(*.f64 z t)
z
t
a
Outputs
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
(-.f64 (*.f64 x y) (*.f64 z t))
(*.f64 x y)
x
y
(*.f64 z t)
z
t
a

localize28.0ms (2.1%)

Memory
-0.9MiB live, 37.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 z t)
accuracy0.0
(*.f64 x y)
accuracy0.5078083716604116
(-.f64 (*.f64 x y) (*.f64 z t))
accuracy3.9534036308436558
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
Samples
22.0ms256×0valid
Compiler

Compiled 56 to 20 computations (64.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 5.0ms (58.1% of total)
ival-div: 2.0ms (23.2% of total)
ival-sub: 1.0ms (11.6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series15.0ms (1.2%)

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

15 calls:

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

simplify0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
egg-herbie
Counts
25 → 4
Calls
Call 1
Inputs
(* -1 (/ (* t z) a))
(+ (* -1 (/ (* t z) a)) (/ (* x y) a))
(* -1 (* t z))
(- (* x y) (* t z))
(* x y)
(/ (* x y) a)
(* x (+ (* -1 (/ (* t z) (* a x))) (/ y a)))
(* x (+ y (* -1 (/ (* t z) x))))
(* -1 (* x (+ (* -1 (/ y a)) (/ (* t z) (* a x)))))
(* -1 (* x (+ (* -1 y) (/ (* t z) x))))
(* y (+ (* -1 (/ (* t z) (* a y))) (/ x a)))
(* y (+ x (* -1 (/ (* t z) y))))
(* -1 (* y (+ (* -1 (/ x a)) (/ (* t z) (* a y)))))
(* -1 (* y (+ (* -1 x) (/ (* t z) y))))
(+ (* -1 (* t z)) (* x y))
(* t z)
(* z (+ (* -1 (/ t a)) (/ (* x y) (* a z))))
(* z (- (/ (* x y) z) t))
(* -1 (* z (+ (* -1 (/ (* x y) (* a z))) (/ t a))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 t))))
(* t (+ (* -1 (/ z a)) (/ (* x y) (* a t))))
(* t (- (/ (* x y) t) z))
(* -1 (* t (+ (* -1 (/ (* x y) (* a t))) (/ z a))))
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -1 z))))
(/ (- (* x y) (* t z)) a)
Outputs
(* -1 (/ (* t z) a))
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
(+ (* -1 (/ (* t z) a)) (/ (* x y) a))
(-.f64 (*.f64 x y) (*.f64 z t))
(* -1 (* t z))
(*.f64 x y)
(- (* x y) (* t z))
(*.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)) a)
(-.f64 (*.f64 x y) (*.f64 z t))
(*.f64 x y)
(*.f64 z t)
Outputs
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
(-.f64 (*.f64 x y) (*.f64 z t))
(*.f64 x y)
(*.f64 z t)

eval1.0ms (0.1%)

Memory
1.7MiB live, 1.7MiB allocated
Compiler

Compiled 98 to 19 computations (80.6% saved)

prune1.0ms (0.1%)

Memory
2.4MiB live, 2.4MiB allocated
Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New628
Fresh000
Picked011
Done000
Total639
Accuracy
93.8%
Counts
9 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.4%
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
51.3%
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
13.8%
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
Compiler

Compiled 39 to 33 computations (15.4% saved)

simplify0.0ms (0%)

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

Found 7 expressions of interest:

NewMetricScoreProgram
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)) a)
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)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) (-.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)) a)
#s(approx (- (* x y) (* z t)) (*.f64 x y))
(*.f64 x y)
x
y
a
Outputs
#s(approx (/ (- (* x y) (* z t)) a) (-.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)) a)
#s(approx (- (* x y) (* z t)) (*.f64 x y))
(*.f64 x y)
x
y
a

localize24.0ms (1.8%)

Memory
-1.4MiB live, 36.2MiB allocated
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 x y)
accuracy3.9534036308436558
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
accuracy31.7431924381015
#s(approx (- (* x y) (* z t)) (*.f64 x y))
accuracy0.0
(*.f64 z t)
accuracy0.0
(*.f64 x y)
accuracy0.5078083716604116
(-.f64 (*.f64 x y) (*.f64 z t))
accuracy54.88134097602133
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
Samples
18.0ms256×0valid
Compiler

Compiled 114 to 26 computations (77.2% saved)

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

series7.0ms (0.5%)

Memory
12.0MiB live, 12.0MiB allocated
Counts
6 → 25
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) (-.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)) a)
#s(approx (- (* x y) (* z t)) (*.f64 x y))
Outputs
(* -1 (/ (* t z) a))
(+ (* -1 (/ (* t z) a)) (/ (* x y) a))
(* -1 (* t z))
(- (* x y) (* t z))
(* x y)
(/ (* x y) a)
(* x (+ (* -1 (/ (* t z) (* a x))) (/ y a)))
(* x (+ y (* -1 (/ (* t z) x))))
(* -1 (* x (+ (* -1 (/ y a)) (/ (* t z) (* a x)))))
(* -1 (* x (+ (* -1 y) (/ (* t z) x))))
(* y (+ (* -1 (/ (* t z) (* a y))) (/ x a)))
(* y (+ x (* -1 (/ (* t z) y))))
(* -1 (* y (+ (* -1 (/ x a)) (/ (* t z) (* a y)))))
(* -1 (* y (+ (* -1 x) (/ (* t z) y))))
(+ (* -1 (* t z)) (* x y))
(* t z)
(* z (+ (* -1 (/ t a)) (/ (* x y) (* a z))))
(* z (- (/ (* x y) z) t))
(* -1 (* z (+ (* -1 (/ (* x y) (* a z))) (/ t a))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 t))))
(* t (+ (* -1 (/ z a)) (/ (* x y) (* a t))))
(* t (- (/ (* x y) t) z))
(* -1 (* t (+ (* -1 (/ (* x y) (* a t))) (/ z a))))
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -1 z))))
(/ (- (* x y) (* t z)) a)
Calls

15 calls:

TimeVariablePointExpression
1.0ms
a
@-inf
((/ (- (* x y) (* z t)) a) (- (* x y) (* z t)) (* x y) (* z t) (/ (- (* x y) (* z t)) a) (- (* x y) (* z t)))
1.0ms
z
@-inf
((/ (- (* x y) (* z t)) a) (- (* x y) (* z t)) (* x y) (* z t) (/ (- (* x y) (* z t)) a) (- (* x y) (* z t)))
0.0ms
t
@-inf
((/ (- (* x y) (* z t)) a) (- (* x y) (* z t)) (* x y) (* z t) (/ (- (* x y) (* z t)) a) (- (* x y) (* z t)))
0.0ms
x
@-inf
((/ (- (* x y) (* z t)) a) (- (* x y) (* z t)) (* x y) (* z t) (/ (- (* x y) (* z t)) a) (- (* x y) (* z t)))
0.0ms
y
@-inf
((/ (- (* x y) (* z t)) a) (- (* x y) (* z t)) (* x y) (* z t) (/ (- (* x y) (* z t)) a) (- (* x y) (* z t)))

simplify0.0ms (0%)

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

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) (-.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)) a)
#s(approx (- (* x y) (* z t)) (*.f64 x y))
Outputs
#s(approx (/ (- (* x y) (* z t)) a) (-.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)) a)
#s(approx (- (* x y) (* z t)) (*.f64 x y))

eval1.0ms (0.1%)

Memory
2.8MiB live, 2.8MiB allocated
Compiler

Compiled 242 to 24 computations (90.1% saved)

prune2.0ms (0.2%)

Memory
5.2MiB live, 5.2MiB allocated
Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New10212
Fresh000
Picked022
Done011
Total10515
Accuracy
93.8%
Counts
15 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.4%
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
51.3%
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
13.8%
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
9.2%
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
11.4%
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
Compiler

Compiled 81 to 57 computations (29.6% saved)

simplify0.0ms (0%)

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

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z t)
cost-diff0
#s(approx (- (* x y) (* z t)) (*.f64 z t))
cost-diff0
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.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)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) #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)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (- (* x y) (* z t)) (*.f64 z t))
(*.f64 z t)
z
t
Outputs
#s(approx (/ (- (* x y) (* z t)) a) #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)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (- (* x y) (* z t)) (*.f64 z t))
(*.f64 z t)
z
t

localize23.0ms (1.8%)

Memory
-3.9MiB live, 34.0MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 z t)
accuracy54.88134097602133
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
accuracy60.989983525205716
#s(approx (- (* x y) (* z t)) (*.f64 z t))
accuracy0.0
(*.f64 x y)
accuracy31.7431924381015
#s(approx (- (* x y) (* z t)) (*.f64 x y))
accuracy54.88134097602133
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
Samples
18.0ms256×0valid
Compiler

Compiled 118 to 26 computations (78% saved)

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

series8.0ms (0.6%)

Memory
-25.8MiB live, 12.3MiB allocated
Counts
6 → 25
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) #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)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (- (* x y) (* z t)) (*.f64 z t))
(*.f64 z t)
Outputs
(* -1 (/ (* t z) a))
(+ (* -1 (/ (* t z) a)) (/ (* x y) a))
(* -1 (* t z))
(- (* x y) (* t z))
(* x y)
(/ (* x y) a)
(* x (+ (* -1 (/ (* t z) (* a x))) (/ y a)))
(* x (+ y (* -1 (/ (* t z) x))))
(* -1 (* x (+ (* -1 (/ y a)) (/ (* t z) (* a x)))))
(* -1 (* x (+ (* -1 y) (/ (* t z) x))))
(* y (+ (* -1 (/ (* t z) (* a y))) (/ x a)))
(* y (+ x (* -1 (/ (* t z) y))))
(* -1 (* y (+ (* -1 (/ x a)) (/ (* t z) (* a y)))))
(* -1 (* y (+ (* -1 x) (/ (* t z) y))))
(+ (* -1 (* t z)) (* x y))
(* t z)
(* z (+ (* -1 (/ t a)) (/ (* x y) (* a z))))
(* z (- (/ (* x y) z) t))
(* -1 (* z (+ (* -1 (/ (* x y) (* a z))) (/ t a))))
(* -1 (* z (- (* -1 (/ (* x y) z)) (* -1 t))))
(* t (+ (* -1 (/ z a)) (/ (* x y) (* a t))))
(* t (- (/ (* x y) t) z))
(* -1 (* t (+ (* -1 (/ (* x y) (* a t))) (/ z a))))
(* -1 (* t (- (* -1 (/ (* x y) t)) (* -1 z))))
(/ (- (* x y) (* t z)) a)
Calls

15 calls:

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

simplify0.0ms (0%)

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

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) #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)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (- (* x y) (* z t)) (*.f64 z t))
(*.f64 z t)
Outputs
#s(approx (/ (- (* x y) (* z t)) a) #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)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (- (* x y) (* z t)) (*.f64 z t))
(*.f64 z t)

eval1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Compiler

Compiled 242 to 22 computations (90.9% saved)

prune4.0ms (0.3%)

Memory
6.8MiB live, 6.8MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New10010
Fresh000
Picked022
Done033
Total10515
Accuracy
93.8%
Counts
15 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.4%
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
51.3%
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
13.8%
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
9.2%
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
11.4%
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
Compiler

Compiled 162 to 76 computations (53.1% saved)

regimes23.0ms (1.8%)

Memory
4.5MiB live, 46.5MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
Outputs
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
Calls

9 calls:

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

Compiled 27 to 54 computations (-100% saved)

regimes20.0ms (1.5%)

Memory
2.2MiB live, 41.0MiB allocated
Counts
4 → 3
Calls
Call 1
Inputs
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t)))
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
Outputs
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
(/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a)
#s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))
Calls

9 calls:

3.0ms
z
2.0ms
x
2.0ms
y
2.0ms
(-.f64 (*.f64 x y) (*.f64 z t))
2.0ms
a
Results
AccuracySegmentsBranch
51.3%1y
55.2%3t
55.9%3(*.f64 z t)
51.3%1x
51.3%1z
51.3%1a
51.3%1(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
51.3%1(-.f64 (*.f64 x y) (*.f64 z t))
51.3%1(*.f64 x y)
Compiler

Compiled 27 to 54 computations (-100% saved)

regimes17.0ms (1.3%)

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

9 calls:

3.0ms
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
2.0ms
a
2.0ms
x
2.0ms
y
2.0ms
z
Results
AccuracySegmentsBranch
17.0%3z
13.8%1(-.f64 (*.f64 x y) (*.f64 z t))
13.8%1x
13.8%1(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
13.8%1y
20.9%3a
13.8%1(*.f64 x y)
13.8%1t
13.8%1(*.f64 z t)
Compiler

Compiled 27 to 54 computations (-100% saved)

regimes2.0ms (0.1%)

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

1 calls:

1.0ms
a
Results
AccuracySegmentsBranch
15.7%2a
Compiler

Compiled 1 to 5 computations (-400% saved)

regimes11.0ms (0.9%)

Memory
-11.2MiB live, 27.7MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

9 calls:

2.0ms
(*.f64 x y)
1.0ms
t
1.0ms
(-.f64 (*.f64 x y) (*.f64 z t))
1.0ms
a
1.0ms
z
Results
AccuracySegmentsBranch
11.4%1(-.f64 (*.f64 x y) (*.f64 z t))
11.4%1(*.f64 x y)
11.4%1t
11.4%1(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
11.4%1y
11.4%1(*.f64 z t)
11.4%1x
11.4%1z
11.4%1a
Compiler

Compiled 27 to 54 computations (-100% saved)

bsearch30.0ms (2.3%)

Memory
7.4MiB live, 47.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
1.011291168723645e+293
+inf
13.0ms
-inf
-3.993979344371905e+291
Samples
15.0ms320×0valid
Compiler

Compiled 572 to 517 computations (9.6% saved)

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

bsearch27.0ms (2.1%)

Memory
0.7MiB live, 38.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
4.6616449282355195e+150
3.671819195802671e+162
10.0ms
-1.998849875514899e-307
2.130758542285375e-308
Samples
14.0ms272×0valid
Compiler

Compiled 658 to 476 computations (27.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-mult: 4.0ms (58.8% of total)
ival-div: 2.0ms (29.4% of total)
ival-sub: 1.0ms (14.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-1.998849875514899e-307
2.130758542285375e-308
Compiler

Compiled 306 to 199 computations (35% 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)) a)
(if (<=.f64 (*.f64 z t) #s(literal -289999999999999999412757973482760146866701933129036803456474082895114999585435115797034490744578902506121476441162683007886779029253508055050108614354951299627145185096360326388662882951662182811310830820534953396053121863951820591597735968815211223327146799755836437206032123931924461294452736 binary64)) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t))) (if (<=.f64 (*.f64 z t) #s(literal 96000000000000006642342975123499192708716213793367357472201784806312398195847310699870093052454285540981103062312288665145977836132401167918001096332282454259701833120343682994285474374644910930710469131734765242719220605887414551849236822293676248686667363019436679521018670029596474940659676931776241991680 binary64)) (/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))))
(if (<=.f64 a #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t))) (if (<=.f64 a #s(literal 410000000000000010481018551267953466760715402587252716227897983028768860039257825906353184958957598769235298936404135092511082627106841983223505692888682802970624 binary64)) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t))) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))))
(if (<=.f64 a #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t))) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y))))
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))
Outputs
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) a)
(if (<=.f64 (*.f64 z t) #s(literal -289999999999999999412757973482760146866701933129036803456474082895114999585435115797034490744578902506121476441162683007886779029253508055050108614354951299627145185096360326388662882951662182811310830820534953396053121863951820591597735968815211223327146799755836437206032123931924461294452736 binary64)) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t))) (if (<=.f64 (*.f64 z t) #s(literal 96000000000000006642342975123499192708716213793367357472201784806312398195847310699870093052454285540981103062312288665145977836132401167918001096332282454259701833120343682994285474374644910930710469131734765242719220605887414551849236822293676248686667363019436679521018670029596474940659676931776241991680 binary64)) (/.f64 #s(approx (- (* x y) (* z t)) (*.f64 x y)) a) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t)))))
(if (<=.f64 a #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t))) (if (<=.f64 a #s(literal 410000000000000010481018551267953466760715402587252716227897983028768860039257825906353184958957598769235298936404135092511082627106841983223505692888682802970624 binary64)) #s(approx (/ (- (* x y) (* z t)) a) (-.f64 (*.f64 x y) (*.f64 z t))) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))))
(if (<=.f64 a #s(literal -101201126653655/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 z t))) #s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y))))
#s(approx (/ (- (* x y) (* z t)) a) #s(approx (- (* x y) (* z t)) (*.f64 x y)))

soundness2.0ms (0.1%)

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

Compiled 202 to 32 computations (84.2% saved)

preprocess40.0ms (3.1%)

Memory
1.0MiB live, 77.3MiB allocated
Compiler

Compiled 500 to 122 computations (75.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...