Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- withMod :: Integer -> (forall m. KnownNat m => Proxy m -> r) -> r
- withModM :: Integer -> (forall n. KnownNat n => Proxy n -> m r) -> m r
- withQ :: (forall m. KnownNat m => Proxy m -> r) -> r
- withQM :: (forall n. KnownNat n => Proxy n -> m r) -> m r
- withR :: (forall m. KnownNat m => Proxy m -> r) -> r
- withRM :: (forall n. KnownNat n => Proxy n -> m r) -> m r
- newMod :: forall m. KnownNat m => Integer -> Proxy m -> Mod m
- toInteger :: Mod m -> Integer
- modUnOp :: forall m. KnownNat m => Integer -> (Mod m -> Mod m) -> Proxy m -> Integer
- modBinOp :: forall m. KnownNat m => Integer -> Integer -> (Mod m -> Mod m -> Mod m) -> Proxy m -> Integer
- multInverse :: KnownNat m => Mod m -> Maybe (Mod m)
- modUnOpM :: forall m a. (KnownNat m, Monad a) => Integer -> (Mod m -> a (Mod m)) -> Proxy m -> a Integer
- modUnOpMTup :: forall m a. (KnownNat m, Monad a) => Integer -> (Mod m -> a (Mod m, Mod m)) -> Proxy m -> a (Integer, Integer)
- threeModFourCongruence :: Integer -> Bool
- isSquare :: forall m. KnownNat m => Proxy m -> Mod m -> Bool
- sqrtOf :: forall m. KnownNat m => Mod m -> Maybe (Mod m)
- bothSqrtOf :: forall m. KnownNat m => Mod m -> Maybe (Mod m, Mod m)
- legendre :: Integer -> Integer
- randomMod :: forall n m. (MonadRandom m, KnownNat n) => Proxy n -> m (Mod n)
- fromBytes :: forall n. KnownNat n => ByteOrder -> ByteString -> Proxy n -> Mod n
Documentation
modBinOp :: forall m. KnownNat m => Integer -> Integer -> (Mod m -> Mod m -> Mod m) -> Proxy m -> Integer Source #
modUnOpM :: forall m a. (KnownNat m, Monad a) => Integer -> (Mod m -> a (Mod m)) -> Proxy m -> a Integer Source #
modUnOpMTup :: forall m a. (KnownNat m, Monad a) => Integer -> (Mod m -> a (Mod m, Mod m)) -> Proxy m -> a (Integer, Integer) Source #
threeModFourCongruence :: Integer -> Bool Source #