diff --git a/CHANGELOG b/CHANGELOG
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,8 @@
+2022-12-21 Ivan Perez <ivan.perez@keera.co.uk>
+        * Version bump (0.9.2) (#340).
+        * Bump version bounds for MonadRandom (#337).
+        * Adjust to work with simple-affine-space-0.2 (#339).
+
 2022-10-21 Ivan Perez <ivan.perez@keera.co.uk>
         * Version bump (0.9.1) (#335).
         * Add link to updated paper examples from README (#319).
diff --git a/dunai.cabal b/dunai.cabal
--- a/dunai.cabal
+++ b/dunai.cabal
@@ -30,7 +30,7 @@
 build-type:    Simple
 
 name:          dunai
-version:       0.9.1
+version:       0.9.2
 author:        Ivan Perez, Manuel Bärenz
 maintainer:    ivan.perez@keera.co.uk
 homepage:      https://github.com/ivanperez-keera/dunai
@@ -124,8 +124,8 @@
 
   build-depends:
       base >= 4.6 && < 5
-    , MonadRandom         >= 0.2 && < 0.6
-    , simple-affine-space >= 0.1 && < 0.2
+    , MonadRandom         >= 0.2 && < 0.7
+    , simple-affine-space >= 0.1 && < 0.3
     , transformers        >= 0.3 && < 0.7
     , transformers-base   >= 0.4 && < 0.5
 
@@ -140,9 +140,9 @@
 
   if impl(ghc <= 7.8.4)
     build-depends:
-        transformers-compat
+        MonadRandom         >= 0.2 && < 0.6
+      , transformers-compat
       , void
-
 
 test-suite hlint
   type:
diff --git a/src/Data/MonadicStreamFunction/Instances/VectorSpace.hs b/src/Data/MonadicStreamFunction/Instances/VectorSpace.hs
--- a/src/Data/MonadicStreamFunction/Instances/VectorSpace.hs
+++ b/src/Data/MonadicStreamFunction/Instances/VectorSpace.hs
@@ -43,10 +43,12 @@
 import Data.MonadicStreamFunction.Core (MSF)
 
 -- | Vector-space instance for 'MSF's.
-instance (Monad m, VectorSpace v s) => VectorSpace (MSF m a v) s where
-  zeroVector   = constantly zeroVector
-  r *^ msf     = msf >>^ (r *^)
-  msf ^/ r     = msf >>^ (^/ r)
-  (^+^)        = elementwise2 (^+^)
-  (^-^)        = elementwise2 (^-^)
-  negateVector = (>>^ negateVector)
+instance (Monad m, VectorSpace v s, Eq s, Floating s)
+      => VectorSpace (MSF m a v) s
+  where
+    zeroVector   = constantly zeroVector
+    r *^ msf     = msf >>^ (r *^)
+    msf ^/ r     = msf >>^ (^/ r)
+    (^+^)        = elementwise2 (^+^)
+    (^-^)        = elementwise2 (^-^)
+    negateVector = (>>^ negateVector)
