LinAlg-0.2.0.0: An interface for specifying linear algebra computations

Safe HaskellNone
LanguageHaskell2010

Numeric.LinAlg.Vect

Documentation

data Vect :: Nat -> * -> *

Instances

Eq $b => Eq (Vect $a $b) 
Ord $b => Ord (Vect $a $b) 
Show $b => Show (Vect $a $b) 

data SomeVect a where

Constructors

SomeVect :: Vect n a -> SomeVect a 

nil :: Vect 0 a

cons :: a -> Vect n a -> Vect (n + 1) a

length :: Vect n a -> SNat n

head :: 1 <= n => Vect n a -> a

map :: (a -> b) -> Vect n a -> Vect n b

fromList :: [a] -> SomeVect a

toList :: Vect n a -> [a]

transpose :: Vect m (Vect n a) -> Vect n (Vect m a)

generate :: SNat n -> (Int -> a) -> Vect n a

unsafeFromList :: [a] -> Vect n a