ox-arrays-0.1.0.0: An efficient CPU-based multidimensional array (tensor) library
Safe HaskellNone
LanguageHaskell2010

Data.Array.Strided.Arith

Documentation

class NumElt a where Source #

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) a -> Array n a Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) a -> Array n a Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n a -> a Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n a -> a Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n a -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n a -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) a -> Array (n + 1) a -> Array n a Source #

Instances

Instances details
NumElt CInt Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt -> Array n CInt Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt -> Array n CInt Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt -> Array n CInt Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) CInt -> Array n CInt Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) CInt -> Array n CInt Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n CInt -> CInt Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n CInt -> CInt Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n CInt -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n CInt -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) CInt -> Array (n + 1) CInt -> Array n CInt Source #

NumElt Int32 Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 -> Array n Int32 Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 -> Array n Int32 Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 -> Array n Int32 Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int32 -> Array n Int32 Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int32 -> Array n Int32 Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n Int32 -> Int32 Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n Int32 -> Int32 Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n Int32 -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n Int32 -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) Int32 -> Array (n + 1) Int32 -> Array n Int32 Source #

NumElt Int64 Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 -> Array n Int64 Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 -> Array n Int64 Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 -> Array n Int64 Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int64 -> Array n Int64 Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int64 -> Array n Int64 Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n Int64 -> Int64 Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n Int64 -> Int64 Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n Int64 -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n Int64 -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) Int64 -> Array (n + 1) Int64 -> Array n Int64 Source #

NumElt Double Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Double -> Array n Double Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Double -> Array n Double Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n Double -> Double Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n Double -> Double Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n Double -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n Double -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) Double -> Array (n + 1) Double -> Array n Double Source #

NumElt Float Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Float -> Array n Float Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Float -> Array n Float Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n Float -> Float Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n Float -> Float Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n Float -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n Float -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) Float -> Array (n + 1) Float -> Array n Float Source #

NumElt Int Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

numEltAdd :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int -> Array n Int Source #

numEltSub :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int -> Array n Int Source #

numEltMul :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int -> Array n Int Source #

numEltNeg :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int Source #

numEltAbs :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int Source #

numEltSignum :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int Source #

numEltSum1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int -> Array n Int Source #

numEltProduct1Inner :: forall (n :: Nat). SNat n -> Array (n + 1) Int -> Array n Int Source #

numEltSumFull :: forall (n :: Nat). SNat n -> Array n Int -> Int Source #

numEltProductFull :: forall (n :: Nat). SNat n -> Array n Int -> Int Source #

numEltMinIndex :: forall (n :: Nat). SNat n -> Array n Int -> [Int] Source #

numEltMaxIndex :: forall (n :: Nat). SNat n -> Array n Int -> [Int] Source #

numEltDotprodInner :: forall (n :: Nat). SNat n -> Array (n + 1) Int -> Array (n + 1) Int -> Array n Int Source #

class NumElt a => IntElt a where Source #

Methods

intEltQuot :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

intEltRem :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

Instances

Instances details
IntElt CInt Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

intEltQuot :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt -> Array n CInt Source #

intEltRem :: forall (n :: Nat). SNat n -> Array n CInt -> Array n CInt -> Array n CInt Source #

IntElt Int32 Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

intEltQuot :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 -> Array n Int32 Source #

intEltRem :: forall (n :: Nat). SNat n -> Array n Int32 -> Array n Int32 -> Array n Int32 Source #

IntElt Int64 Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

intEltQuot :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 -> Array n Int64 Source #

intEltRem :: forall (n :: Nat). SNat n -> Array n Int64 -> Array n Int64 -> Array n Int64 Source #

IntElt Int Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

intEltQuot :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int -> Array n Int Source #

intEltRem :: forall (n :: Nat). SNat n -> Array n Int -> Array n Int -> Array n Int Source #

class NumElt a => FloatElt a where Source #

Methods

floatEltDiv :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

floatEltPow :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

floatEltLogbase :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

floatEltRecip :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltExp :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltLog :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltSqrt :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltSin :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltCos :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltTan :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAsin :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAcos :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAtan :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltSinh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltCosh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltTanh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAsinh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAcosh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAtanh :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltLog1p :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltExpm1 :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltLog1pexp :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltLog1mexp :: forall (n :: Nat). SNat n -> Array n a -> Array n a Source #

floatEltAtan2 :: forall (n :: Nat). SNat n -> Array n a -> Array n a -> Array n a Source #

Instances

Instances details
FloatElt Double Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

floatEltDiv :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

floatEltPow :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

floatEltLogbase :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

floatEltRecip :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltExp :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltLog :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltSqrt :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltSin :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltCos :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltTan :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAsin :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAcos :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAtan :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltSinh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltCosh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltTanh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAsinh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAcosh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAtanh :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltLog1p :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltExpm1 :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltLog1pexp :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltLog1mexp :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double Source #

floatEltAtan2 :: forall (n :: Nat). SNat n -> Array n Double -> Array n Double -> Array n Double Source #

FloatElt Float Source # 
Instance details

Defined in Data.Array.Strided.Arith.Internal

Methods

floatEltDiv :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

floatEltPow :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

floatEltLogbase :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #

floatEltRecip :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltExp :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltLog :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltSqrt :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltSin :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltCos :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltTan :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAsin :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAcos :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAtan :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltSinh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltCosh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltTanh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAsinh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAcosh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAtanh :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltLog1p :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltExpm1 :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltLog1pexp :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltLog1mexp :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float Source #

floatEltAtan2 :: forall (n :: Nat). SNat n -> Array n Float -> Array n Float -> Array n Float Source #