lol-0.7.0.0: A library for lattice cryptography.

Safe HaskellNone
LanguageHaskell2010

Crypto.Lol.Types.IFunctor

Documentation

class IFunctor f where Source #

Associated Types

type IFElt f a :: Constraint Source #

Methods

fmapI :: (IFElt f a, IFElt f b, Fact m) => (a -> b) -> f m a -> f m b Source #

zipWithI :: (IFElt f a, IFElt f b, IFElt f c, Fact m) => (a -> b -> c) -> f m a -> f m b -> f m c Source #

Instances
IFunctor t => IFunctor (CycRep t D) Source #

apply coefficient-wise

Instance details

Defined in Crypto.Lol.Cyclotomic.CycRep

Associated Types

type IFElt (CycRep t D) a :: Constraint Source #

Methods

fmapI :: (IFElt (CycRep t D) a, IFElt (CycRep t D) b, Fact m) => (a -> b) -> CycRep t D m a -> CycRep t D m b Source #

zipWithI :: (IFElt (CycRep t D) a, IFElt (CycRep t D) b, IFElt (CycRep t D) c, Fact m) => (a -> b -> c) -> CycRep t D m a -> CycRep t D m b -> CycRep t D m c Source #

IFunctor t => IFunctor (CycRep t P) Source #

apply coefficient-wise

Instance details

Defined in Crypto.Lol.Cyclotomic.CycRep

Associated Types

type IFElt (CycRep t P) a :: Constraint Source #

Methods

fmapI :: (IFElt (CycRep t P) a, IFElt (CycRep t P) b, Fact m) => (a -> b) -> CycRep t P m a -> CycRep t P m b Source #

zipWithI :: (IFElt (CycRep t P) a, IFElt (CycRep t P) b, IFElt (CycRep t P) c, Fact m) => (a -> b -> c) -> CycRep t P m a -> CycRep t P m b -> CycRep t P m c Source #