diff --git a/Control/Monad/Random/Class.hs b/Control/Monad/Random/Class.hs
--- a/Control/Monad/Random/Class.hs
+++ b/Control/Monad/Random/Class.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE MultiParamTypeClasses, UndecidableInstances #-}
+{-# LANGUAGE MultiParamTypeClasses, UndecidableInstances, FunctionalDependencies #-}
 
 {- |
 Copyright    : 2006-2007 Cale Gibbard, Russell O'Connor, Dan Doel, Remi Turk, Eric Kidd.
@@ -45,6 +45,6 @@
 -- | An interface to monads with splittable state (as most random number generation monads will have).
 -- The intention is that the 'getSplit' action splits the state, returning one half of the result, and
 -- setting the new state to the other.
-class (Monad m) => MonadSplit s m where
+class (Monad m) => MonadSplit s m | m -> s where
     getSplit :: m s
 
diff --git a/MonadRandom.cabal b/MonadRandom.cabal
--- a/MonadRandom.cabal
+++ b/MonadRandom.cabal
@@ -1,6 +1,6 @@
 Name:                MonadRandom
 Build-type:          Simple
-Version:             0.1.2
+Version:             0.1.3
 Synopsis:            Random-number generation monad.
 Description:         Support for computations which consume random values.
 License:             OtherLicense
