diff --git a/src/Data/Stream/Infinite.hs b/src/Data/Stream/Infinite.hs
--- a/src/Data/Stream/Infinite.hs
+++ b/src/Data/Stream/Infinite.hs
@@ -185,9 +185,6 @@
 interleave :: Stream a -> Stream a -> Stream a
 interleave ~(x :> xs) ys = x :> interleave ys xs
 
-instance Semigroup (Stream a) where
-  (<>) = interleave
-
 -- | The 'inits' function takes a stream @xs@ and returns all the
 -- finite prefixes of @xs@.
 --
diff --git a/streams.cabal b/streams.cabal
--- a/streams.cabal
+++ b/streams.cabal
@@ -1,6 +1,6 @@
 name:          streams
 category:      Control, Comonads
-version:       3.0.1.1
+version:       3.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -40,8 +40,7 @@
   * "Data.Stream.Infinite" provides a coinductive infinite anti-causal stream. The 'Comonad' provides access to the tail of the
     stream and the 'Applicative' zips streams together. Unlike 'Future', infinite stream form a 'Monad'. The monad diagonalizes
     the 'Stream', which is consistent with the behavior of the 'Applicative', and the view of a 'Stream' as a isomorphic to the reader
-    monad from the natural numbers. Being infinite in length, there is no 'Alternative' instance, but instead the 'FunctorAlt'
-    instance provides access to the 'Semigroup' of interleaving streams.
+    monad from the natural numbers. Being infinite in length, there is no 'Alternative' instance.
   .
   > data Stream a = a :< Stream a
   .
