diff --git a/src/UniqueLogic/ST/System.hs b/src/UniqueLogic/ST/System.hs
--- a/src/UniqueLogic/ST/System.hs
+++ b/src/UniqueLogic/ST/System.hs
@@ -80,9 +80,7 @@
 lift :: ST s a -> T w s a
 lift = Cons . MT.lift
 
-globalVariable ::
-   (UMT.C w, Duplicate.C a) =>
-   SimpleUpdater w s a -> ST s (Variable w s a)
+globalVariable :: (UMT.C w) => SimpleUpdater w s a -> ST s (Variable w s a)
 globalVariable update = object update Nothing
 
 localVariable :: (C w, Duplicate.C a) => T w s (Variable w s a)
@@ -132,7 +130,7 @@
 queryVerify = fmap (fmap (\(Duplicate.Verify a) -> a)) . query
 
 
-updateIfNew :: (C w, Duplicate.C a) => Updater w s a
+updateIfNew :: (C w) => Updater w s a
 updateIfNew al av act = do
    as <- UMT.lift $ readSTRef av
    when (isNothing as) $ void $ runMaybeT $ do
diff --git a/unique-logic.cabal b/unique-logic.cabal
--- a/unique-logic.cabal
+++ b/unique-logic.cabal
@@ -1,6 +1,6 @@
 Cabal-Version:    2.2
 Name:             unique-logic
-Version:          0.4.0.2
+Version:          0.4.1
 License:          BSD-3-Clause
 License-File:     LICENSE
 Author:           Henning Thielemann
@@ -66,7 +66,7 @@
 Build-Type:        Simple
 
 Source-Repository this
-  Tag:         0.4.0.2
+  Tag:         0.4.1
   Type:        darcs
   Location:    https://hub.darcs.net/thielema/unique-logic/
 
