diff --git a/rethinkdb-client-driver.cabal b/rethinkdb-client-driver.cabal
--- a/rethinkdb-client-driver.cabal
+++ b/rethinkdb-client-driver.cabal
@@ -1,5 +1,5 @@
 name:                   rethinkdb-client-driver
-version:                0.0.17
+version:                0.0.18
 license:                MIT
 license-file:           LICENSE
 author:                 Tomas Carnecky
diff --git a/src/Database/RethinkDB/Messages.hs b/src/Database/RethinkDB/Messages.hs
--- a/src/Database/RethinkDB/Messages.hs
+++ b/src/Database/RethinkDB/Messages.hs
@@ -26,6 +26,8 @@
 
 import           Database.RethinkDB.Types
 
+import           Prelude
+
 
 
 createSocket :: Text -> Int -> IO Socket
diff --git a/src/Database/RethinkDB/Types.hs b/src/Database/RethinkDB/Types.hs
--- a/src/Database/RethinkDB/Types.hs
+++ b/src/Database/RethinkDB/Types.hs
@@ -29,8 +29,10 @@
 
 import           Database.RethinkDB.Types.Datum
 
+import           Prelude
 
 
+
 ------------------------------------------------------------------------------
 -- | A Term is a JSON expression which can be sent to the server. Building a
 -- term is a stateful operation, so the whole process happens inside a 'State'
@@ -399,6 +401,7 @@
     GetAllIndexed  :: (IsDatum a) => Exp Table -> [Exp a] -> Text -> Exp (Sequence Datum)
 
     Add            :: (Num a) => [Exp a] -> Exp a
+    Sub            :: (Num a) => [Exp a] -> Exp a
     Multiply       :: (Num a) => [Exp a] -> Exp a
 
     All :: [Exp Bool] -> Exp Bool
@@ -599,6 +602,9 @@
 
     toTerm (Add values) =
         simpleTerm 24 (map SomeExp values)
+
+    toTerm (Sub values) =
+        simpleTerm 25 (map SomeExp values)
 
     toTerm (Multiply values) =
         simpleTerm 26 (map SomeExp values)
