diff --git a/smtLib.cabal b/smtLib.cabal
--- a/smtLib.cabal
+++ b/smtLib.cabal
@@ -1,5 +1,5 @@
 Name:           smtLib
-Version:        1.0.2
+Version:        1.0.3
 License:        BSD3
 License-file:   LICENSE
 Author:         Iavor S. Diatchki
@@ -25,6 +25,9 @@
     SMTLib2.Core
     SMTLib2.BitVector
     SMTLib2.Array
+    SMTLib2.Int
+
+  other-modules:
     SMTLib1.AST
     SMTLib1.PP
     SMTLib2.AST
diff --git a/src/SMTLib2/Int.hs b/src/SMTLib2/Int.hs
new file mode 100644
--- /dev/null
+++ b/src/SMTLib2/Int.hs
@@ -0,0 +1,43 @@
+{-# LANGUAGE OverloadedStrings #-}
+module SMTLib2.Int where
+
+import SMTLib2.AST
+
+tInt :: Type
+tInt = TApp (I "Int" []) []
+
+num :: Integral a => a -> Expr
+num a = Lit (LitNum (toInteger a))
+
+nNeg :: Expr -> Expr
+nNeg x = app "-" [x]
+
+nSub :: Expr -> Expr -> Expr
+nSub x y = app "-" [x,y]
+
+nAdd :: Expr -> Expr -> Expr
+nAdd x y = app "+" [x,y]
+
+nMul :: Expr -> Expr -> Expr
+nMul x y = app "*" [x,y]
+
+nDiv :: Expr -> Expr -> Expr
+nDiv x y = app "div" [x,y]
+
+nMod :: Expr -> Expr -> Expr
+nMod x y = app "mod" [x,y]
+
+nAbs :: Expr -> Expr
+nAbs x = app "abs" [x]
+
+nLeq :: Expr -> Expr -> Expr
+nLeq x y = app "<=" [x,y]
+
+nLt :: Expr -> Expr -> Expr
+nLt x y = app "<" [x,y]
+
+nGeq :: Expr -> Expr -> Expr
+nGeq x y = app ">=" [x,y]
+
+nGt :: Expr -> Expr -> Expr
+nGt x y = app ">" [x,y]
