diff --git a/Data/Groupoid.hs b/Data/Groupoid.hs
--- a/Data/Groupoid.hs
+++ b/Data/Groupoid.hs
@@ -3,7 +3,11 @@
   ) where
 
 import Data.Semigroupoid
+import Data.Semigroupoid.Dual
 
 -- | semigroupoid with inverses. This technically should be a category with inverses, except we need to use Ob to define the valid objects for the category
 class Semigroupoid k => Groupoid k where
   inv :: k a b -> k b a
+
+instance Groupoid k => Groupoid (Dual k) where
+  inv (Dual k) = Dual (inv k)
diff --git a/groupoids.cabal b/groupoids.cabal
--- a/groupoids.cabal
+++ b/groupoids.cabal
@@ -1,6 +1,6 @@
 name:          groupoids
 category:      Control, Categories
-version:       0.1
+version:       0.1.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
