diff --git a/CHANGELOG.markdown b/CHANGELOG.markdown
--- a/CHANGELOG.markdown
+++ b/CHANGELOG.markdown
@@ -1,3 +1,7 @@
+0.9.1
+-----
+* Fixed subtraction.
+
 0.8
 ---
 * Updated to `comonad` and `semigroupoids` 4.
diff --git a/log-domain.cabal b/log-domain.cabal
--- a/log-domain.cabal
+++ b/log-domain.cabal
@@ -1,6 +1,6 @@
 name:          log-domain
 category:      Numeric
-version:       0.9
+version:       0.9.1
 license:       BSD3
 cabal-version: >= 1.8
 license-file:  LICENSE
diff --git a/src/Numeric/Log.hs b/src/Numeric/Log.hs
--- a/src/Numeric/Log.hs
+++ b/src/Numeric/Log.hs
@@ -200,7 +200,7 @@
   {-# INLINE (+) #-}
   Exp a - Exp b
     | a == negInf && b == negInf = Exp negInf
-    | otherwise = Exp (a + log1mexp (b - a))
+    | otherwise = Exp (a + log1mexp (a - b))
   {-# INLINE (-) #-}
   signum (Exp a)
     | a == negInf = 0
