{- 10.1 -}

{- 10.1.1 -}
removeFirst :: a -> [a] -> [a]
removeFirst x xs = undefined

{- 10.1.2 -}
isPermutation :: Eq a => [a] -> [a] -> Bool
isPermutation xs ys = undefined

{- 10.1.3 -}
hasDuplicates :: Eq a => [a] -> Bool
hasDuplicates xs = undefined


{- 10.3 -}

{- 10.3.1 -}
divisors :: Integer -> [Integer]
divisors n = undefined

{- 10.3.2 -}
isPerfectNumber :: Integer -> Bool
isPerfectNumber n = undefined

{- 10.3.3 -}
perfectNumbers :: Integer -> [Integer]
perfectNumbers n = undefined