zkfold-base-0.1.0.0: ZkFold Symbolic compiler and zero-knowledge proof protocols
Safe HaskellSafe-Inferred
LanguageHaskell2010

ZkFold.Base.Data.Sparse.Vector

Documentation

newtype SVector size a Source #

Constructors

SVector 

Fields

Instances

Instances details
Scale c a => Scale c (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

scale :: c -> SVector size a -> SVector size a Source #

Foldable (SVector size) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

fold :: Monoid m => SVector size m -> m #

foldMap :: Monoid m => (a -> m) -> SVector size a -> m #

foldMap' :: Monoid m => (a -> m) -> SVector size a -> m #

foldr :: (a -> b -> b) -> b -> SVector size a -> b #

foldr' :: (a -> b -> b) -> b -> SVector size a -> b #

foldl :: (b -> a -> b) -> b -> SVector size a -> b #

foldl' :: (b -> a -> b) -> b -> SVector size a -> b #

foldr1 :: (a -> a -> a) -> SVector size a -> a #

foldl1 :: (a -> a -> a) -> SVector size a -> a #

toList :: SVector size a -> [a] #

null :: SVector size a -> Bool #

length :: SVector size a -> Int #

elem :: Eq a => a -> SVector size a -> Bool #

maximum :: Ord a => SVector size a -> a #

minimum :: Ord a => SVector size a -> a #

sum :: Num a => SVector size a -> a #

product :: Num a => SVector size a -> a #

Functor (SVector size) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

fmap :: (a -> b) -> SVector size a -> SVector size b #

(<$) :: a -> SVector size b -> SVector size a #

KnownNat size => Semialign (SVector size) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

align :: SVector size a -> SVector size b -> SVector size (These a b) #

alignWith :: (These a b -> c) -> SVector size a -> SVector size b -> SVector size c #

KnownNat size => Zip (SVector size) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

zip :: SVector size a -> SVector size b -> SVector size (a, b) #

zipWith :: (a -> b -> c) -> SVector size a -> SVector size b -> SVector size c #

(KnownNat size, Arbitrary a) => Arbitrary (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

arbitrary :: Gen (SVector size a) #

shrink :: SVector size a -> [SVector size a] #

Show a => Show (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

showsPrec :: Int -> SVector size a -> ShowS #

show :: SVector size a -> String #

showList :: [SVector size a] -> ShowS #

(Binary a, KnownNat n) => Binary (SVector n a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

put :: SVector n a -> Put #

get :: Get (SVector n a) #

putList :: [SVector n a] -> Put #

(KnownNat size, Eq a) => Eq (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

(==) :: SVector size a -> SVector size a -> Bool #

(/=) :: SVector size a -> SVector size a -> Bool #

(KnownNat size, AdditiveGroup a, Eq a) => AdditiveGroup (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

(-) :: SVector size a -> SVector size a -> SVector size a Source #

negate :: SVector size a -> SVector size a Source #

(KnownNat size, AdditiveMonoid a, Eq a) => AdditiveMonoid (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

zero :: SVector size a Source #

(KnownNat size, AdditiveMonoid a, Eq a) => AdditiveSemigroup (SVector size a) Source # 
Instance details

Defined in ZkFold.Base.Data.Sparse.Vector

Methods

(+) :: SVector size a -> SVector size a -> SVector size a Source #

(.+) :: (KnownNat size, AdditiveMonoid a, Eq a) => SVector size a -> SVector size a -> SVector size a Source #

(.-) :: (KnownNat size, AdditiveGroup a, Eq a) => SVector size a -> SVector size a -> SVector size a Source #

(.*) :: (KnownNat size, MultiplicativeSemigroup a) => SVector size a -> SVector size a -> SVector size a Source #

(./) :: (KnownNat size, MultiplicativeGroup a) => SVector size a -> SVector size a -> SVector size a Source #