QIO-1.0: The Quantum IO Monad is a library for defining quantum computations in Haskell
QIO.VecEq
class VecEq v whereSource
Methods
vzero :: v x aSource
(<+>) :: (Eq a, Num x) => v x a -> v x a -> v x aSource
(<*>) :: Num x => x -> v x a -> v x aSource
(<@>) :: (Eq a, Num x) => a -> v x a -> xSource
fromList :: [(a, x)] -> v x aSource
toList :: v x a -> [(a, x)]Source
Instances
newtype VecEqL x a Source
Constructors
Fields
vEqZero :: VecEqL x aSource
vEqPlus :: (Eq a, Num x) => VecEqL x a -> VecEqL x a -> VecEqL x aSource
vEqTimes :: Num x => x -> VecEqL x a -> VecEqL x aSource
vEqAt :: (Eq a, Num x) => a -> VecEqL x a -> xSource
add :: (Eq a, Num x) => (a, x) -> VecEqL x a -> VecEqL x aSource
class EqMonad m whereSource
eqReturn :: Eq a => a -> m aSource
eqBind :: (Eq a, Eq b) => m a -> (a -> m b) -> m bSource
data AsMonad m a whereSource
unEmbed :: Eq a => AsMonad m a -> m aSource