Diagrams.Solve.Tridiagonal:solveTriDiagonal from diagrams-solve-0.1, A

Time bar (total: 3.4s)

analyze164.0ms (4.9%)

Memory
0.5MiB live, 80.1MiB 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
37.5%37.4%62.3%0.2%0%0%0%6
37.5%37.4%62.3%0.2%0%0%0%7
37.5%37.4%62.3%0.2%0%0%0%8
37.5%37.4%62.3%0.2%0%0%0%9
43.8%43.6%56.1%0.2%0%0%0%10
51.6%51.4%48.3%0.2%0%0%0%11
51.6%51.4%48.3%0.2%0%0%0%12
Compiler

Compiled 30 to 23 computations (23.3% saved)

sample2.8s (81.7%)

Memory
-9.4MiB live, 869.4MiB allocated
Samples
641.0ms8 255×0valid-sollya
501.0ms8 255×0valid-baseline
446.0ms8 255×0valid-rival
0.0ms1valid-baseline
0.0ms1valid-rival
0.0ms1valid-sollya
Bogosity

preprocess427.0ms (12.7%)

Memory
-0.6MiB live, 32.5MiB allocated
Algorithm
egg-herbie
Rules
2 321×fmm-def
491×div-sub
466×*-commutative
460×fma-define
437×sub-neg
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0801098
12721098
25401034
316371034
448661034
567761034
673001034
774421034
874951034
975411034
1078861034
1179741034
1279741034
1379741034
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 (neg.f64 y) z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y (neg.f64 z))) (-.f64 t (*.f64 a (neg.f64 z))))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 (neg.f64 a) z)))
(neg.f64 (/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 a z))))
(neg.f64 (/.f64 (-.f64 x (*.f64 (neg.f64 y) z)) (-.f64 t (*.f64 a z))))
(neg.f64 (/.f64 (-.f64 x (*.f64 y (neg.f64 z))) (-.f64 t (*.f64 a (neg.f64 z)))))
(neg.f64 (/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 a z))))
(neg.f64 (/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 (neg.f64 a) z))))
(/.f64 (-.f64 y (*.f64 x z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 z (*.f64 y x)) (-.f64 t (*.f64 a x)))
(/.f64 (-.f64 t (*.f64 y z)) (-.f64 x (*.f64 a z)))
(/.f64 (-.f64 a (*.f64 y z)) (-.f64 t (*.f64 x z)))
(/.f64 (-.f64 x (*.f64 z y)) (-.f64 t (*.f64 a y)))
(/.f64 (-.f64 x (*.f64 t z)) (-.f64 y (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 a z)) (-.f64 t (*.f64 y z)))
(/.f64 (-.f64 x (*.f64 y t)) (-.f64 z (*.f64 a t)))
(/.f64 (-.f64 x (*.f64 y a)) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 a (*.f64 t z)))
Outputs
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (fma.f64 y z x) (-.f64 (*.f64 z a) t))
(/.f64 (-.f64 x (*.f64 (neg.f64 y) z)) (-.f64 t (*.f64 a z)))
(/.f64 (+.f64 x (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (fma.f64 y z x) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y (neg.f64 z))) (-.f64 t (*.f64 a (neg.f64 z))))
(/.f64 (+.f64 x (*.f64 y z)) (+.f64 t (*.f64 z a)))
(/.f64 (fma.f64 y z x) (fma.f64 z a t))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 z a)))
(/.f64 (-.f64 (*.f64 y z) x) (fma.f64 z a t))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 (neg.f64 a) z)))
(/.f64 (-.f64 x (*.f64 y z)) (+.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y z)) (fma.f64 z a t))
(neg.f64 (/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 a z))))
(/.f64 (+.f64 x (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (fma.f64 y z x) (-.f64 t (*.f64 z a)))
(neg.f64 (/.f64 (-.f64 x (*.f64 (neg.f64 y) z)) (-.f64 t (*.f64 a z))))
(/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (-.f64 t (*.f64 z a)))
(/.f64 (fma.f64 y z x) (-.f64 (*.f64 z a) t))
(neg.f64 (/.f64 (-.f64 x (*.f64 y (neg.f64 z))) (-.f64 t (*.f64 a (neg.f64 z)))))
(/.f64 (+.f64 x (*.f64 y z)) (neg.f64 (+.f64 t (*.f64 z a))))
(/.f64 (-.f64 (neg.f64 x) (*.f64 y z)) (+.f64 t (*.f64 z a)))
(/.f64 (neg.f64 (fma.f64 y z x)) (fma.f64 z a t))
(neg.f64 (/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 a z))))
(/.f64 (-.f64 x (*.f64 y z)) (+.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y z)) (fma.f64 z a t))
(neg.f64 (/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 (neg.f64 a) z))))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 (neg.f64 t) (*.f64 z a)))
(/.f64 (-.f64 (*.f64 y z) x) (fma.f64 z a t))
(/.f64 (-.f64 y (*.f64 x z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 y (*.f64 x z)) (-.f64 t (*.f64 z a)))
(/.f64 (fma.f64 x (neg.f64 z) y) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 z (*.f64 y x)) (-.f64 t (*.f64 a x)))
(/.f64 (-.f64 z (*.f64 x y)) (-.f64 t (*.f64 x a)))
(/.f64 (fma.f64 x (neg.f64 y) z) (-.f64 t (*.f64 x a)))
(/.f64 (fma.f64 x y (neg.f64 z)) (-.f64 (*.f64 x a) t))
(/.f64 (-.f64 t (*.f64 y z)) (-.f64 x (*.f64 a z)))
(/.f64 (-.f64 t (*.f64 y z)) (-.f64 x (*.f64 z a)))
(/.f64 (fma.f64 z (neg.f64 y) t) (-.f64 x (*.f64 z a)))
(/.f64 (-.f64 a (*.f64 y z)) (-.f64 t (*.f64 x z)))
(/.f64 (fma.f64 z (neg.f64 y) a) (fma.f64 x (neg.f64 z) t))
(/.f64 (-.f64 x (*.f64 z y)) (-.f64 t (*.f64 a y)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 y a)))
(/.f64 (-.f64 x (*.f64 t z)) (-.f64 y (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 z t)) (-.f64 y (*.f64 z a)))
(/.f64 (fma.f64 t (neg.f64 z) x) (-.f64 y (*.f64 z a)))
(/.f64 (-.f64 (*.f64 z t) x) (fma.f64 z a (neg.f64 y)))
(/.f64 (-.f64 x (*.f64 a z)) (-.f64 t (*.f64 y z)))
(/.f64 (-.f64 x (*.f64 z a)) (-.f64 t (*.f64 y z)))
(/.f64 (-.f64 x (*.f64 z a)) (fma.f64 z (neg.f64 y) t))
(/.f64 (-.f64 x (*.f64 y t)) (-.f64 z (*.f64 a t)))
(/.f64 (-.f64 x (*.f64 y t)) (-.f64 z (*.f64 t a)))
(/.f64 (-.f64 x (*.f64 y t)) (fma.f64 t (neg.f64 a) z))
(/.f64 (-.f64 (*.f64 y t) x) (-.f64 (*.f64 t a) z))
(/.f64 (-.f64 x (*.f64 y a)) (-.f64 t (*.f64 z a)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 a (*.f64 t z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 a (*.f64 z t)))
(/.f64 (-.f64 x (*.f64 y z)) (fma.f64 t (neg.f64 z) a))
Compiler

Compiled 16 to 10 computations (37.5% saved)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Compiler

Compiled 5 to 5 computations (0% saved)

prune1.0ms (0%)

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

Compiled 32 to 20 computations (37.5% saved)

simplify3.0ms (0.1%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
egg-herbie
Rules
sub-neg
*-commutative
+-commutative
neg-sub0
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01849
13149
25249
36249
46849
56949
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
Outputs
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 a z)))
(/.f64 (-.f64 x (*.f64 y z)) (-.f64 t (*.f64 z a)))

soundness0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated
Stop Event
fuel
Compiler

Compiled 16 to 10 computations (37.5% saved)

preprocess23.0ms (0.7%)

Memory
2.3MiB live, 33.5MiB allocated
Compiler

Compiled 176 to 86 computations (51.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...