Fix warnings and whitespace

This commit is contained in:
Olivier Chéron 2019-12-03 21:05:47 +01:00
parent 18c6e37ef1
commit 0a1aa3517c

View File

@ -1,5 +1,4 @@
{-# LANGUAGE BangPatterns #-} {-# LANGUAGE BangPatterns #-}
{-# LANGUAGE DeriveDataTypeable #-}
-- | -- |
-- Module : Crypto.Number.ModArithmetic -- Module : Crypto.Number.ModArithmetic
-- License : BSD-style -- License : BSD-style
@ -71,7 +70,7 @@ exponentiation b e m
| b == 1 = b | b == 1 = b
| e == 0 = 1 | e == 0 = 1
| e == 1 = b `mod` m | e == 1 = b `mod` m
| even e = let p = (exponentiation b (e `div` 2) m) `mod` m | even e = let p = exponentiation b (e `div` 2) m `mod` m
in (p^(2::Integer)) `mod` m in (p^(2::Integer)) `mod` m
| otherwise = (b * exponentiation b (e-1) m) `mod` m | otherwise = (b * exponentiation b (e-1) m) `mod` m