Safe Haskell | Safe-Infered |
---|
- staircase :: (Num α, Integral α) => SparseMatrix α -> SparseMatrix α
- clearColumn :: (Num α, Integral α) => SparseMatrix α -> SparseMatrix α
- extGCD :: (Num α, Integral α) => α -> α -> (α, SparseMatrix α)
Documentation
staircase :: (Num α, Integral α) => SparseMatrix α -> SparseMatrix αSource
clearColumn :: (Num α, Integral α) => SparseMatrix α -> SparseMatrix αSource
clearColumn m --> m' From the start, length(m) > 1. m'(1,1) = gcd(firstColumn(m)), m'(i,1)==0 for i>1. m'(1,1) = 0 means that column was zero.
extGCD :: (Num α, Integral α) => α -> α -> (α, SparseMatrix α)Source
extGCD a b --> (gcd(a,b), tt) a,b are divided repeatedly with remainder, like in extended gcd method. tt is a protocol 2x2 matrix so, [a,b] ·× tt = [gcd(a,b),0]