BNFC-2.6.0.3: A compiler front-end generator.

Safe HaskellNone

Data.Matrix.Class

Documentation

fingerprint :: (AbelianGroupZ a, Matrix m) => m a -> [[Char]]

(***) :: (t -> t2) -> (t1 -> t3) -> (t, t1) -> (t2, t3)

data Dimension

Constructors

XD 
YD 

quad :: (AbelianGroup a, Matrix m) => m a -> m a -> m a -> m a -> m a

type Extent = (Int, Int)

ext :: Dimension -> (t, t) -> t

glueExt :: (AbelianGroup t1, AbelianGroup t) => Dimension -> (t, t1) -> (t, t1) -> (t, t1)

splitExt :: Num t => Dimension -> t -> (t, t) -> ((t, t), (t, t))

class Matrix m where

Methods

at :: AbelianGroupZ a => Int -> Int -> m a -> a

extent :: m a -> Extent

singleton :: AbelianGroupZ a => a -> m a

Sigleton matrix

glue :: AbelianGroup a => Dimension -> m a -> m a -> m a

split :: AbelianGroupZ a => Dimension -> Int -> m a -> (m a, m a)

zeroMatrix :: AbelianGroup a => Int -> Int -> m a

Instances

Matrix m => Matrix (O Pair m) 

(<|>) :: (AbelianGroup a, Matrix m) => m a -> m a -> m a

(<->) :: (AbelianGroup a, Matrix m) => m a -> m a -> m a

countColumns :: Matrix m => m a -> Int

countRows :: Matrix m => m a -> Int

chopLastColumn :: (AbelianGroupZ a, Matrix m) => m a -> m a

firstRow :: (AbelianGroupZ a, Matrix m) => m a -> m a

lastColumn :: (AbelianGroupZ a, Matrix m) => m a -> m a

chopLastRow :: (AbelianGroupZ a, Matrix m) => m a -> m a

chopFirstColumn :: (AbelianGroupZ a, Matrix m) => m a -> m a

chopFirstRow :: (AbelianGroupZ a, Matrix m) => m a -> m a