diff --git a/src/Synthesizer/Dimensional/Arrow.hs b/src/Synthesizer/Dimensional/Arrow.hs
--- a/src/Synthesizer/Dimensional/Arrow.hs
+++ b/src/Synthesizer/Dimensional/Arrow.hs
@@ -39,7 +39,8 @@
 import qualified Algebra.DimensionTerm       as Dim
 
 import NumericPrelude.Numeric (one)
-import Prelude hiding (map, id, fst, snd, )
+import NumericPrelude.Base hiding (id)
+import Prelude ()
 
 
 
diff --git a/src/Synthesizer/Dimensional/Map.hs b/src/Synthesizer/Dimensional/Map.hs
--- a/src/Synthesizer/Dimensional/Map.hs
+++ b/src/Synthesizer/Dimensional/Map.hs
@@ -98,11 +98,11 @@
 use it in combination with 'first' and 'second'.
 
 FIXME:
-Using this function is however still unsafe,
+This function however still breaks the abstraction,
 since normally it should not be observable
 how the volume is balanced between amplitude and signal.
 This function allows to replace an actual amplitude by 'Flat',
-which is also unsafe.
+which also breaks the abstraction.
 This may only be used for proportional mappings.
 See 'SigA.T'.
 -}
diff --git a/src/Synthesizer/Dimensional/Process.hs b/src/Synthesizer/Dimensional/Process.hs
--- a/src/Synthesizer/Dimensional/Process.hs
+++ b/src/Synthesizer/Dimensional/Process.hs
@@ -50,13 +50,13 @@
 import qualified Control.Applicative as App
 import Control.Applicative (Applicative)
 
-
-{-
 import NumericPrelude.Numeric
-import NumericPrelude.Base as P
--}
+import NumericPrelude.Base
 
+import qualified Prelude as P
+import Prelude (RealFrac)
 
+
 {- |
 This wraps a function which computes a sample rate dependent result.
 Sample rate tells how many values per unit are stored
@@ -195,4 +195,4 @@
    DN.T u t ->
    T s u t Int
 intFromTime98 funcName t =
-   fmap (checkedChunkSize funcName . ceiling) $ toTimeScalar t
+   fmap (checkedChunkSize funcName . P.ceiling) $ toTimeScalar t
diff --git a/src/Synthesizer/Dimensional/Signal/Private.hs b/src/Synthesizer/Dimensional/Signal/Private.hs
--- a/src/Synthesizer/Dimensional/Signal/Private.hs
+++ b/src/Synthesizer/Dimensional/Signal/Private.hs
@@ -42,7 +42,7 @@
 A signal value 0.5 at global amplitude 1
 and signal value 1 at global amplitude 0.5
 shall represent the same signal.
-Thus it is unsafe to observe the amplitude.
+Thus observing the amplitude breaks the abstraction.
 
 Cyclic nature such as needed for Fourier transform
 must be expressend in the body.
diff --git a/synthesizer-dimensional.cabal b/synthesizer-dimensional.cabal
--- a/synthesizer-dimensional.cabal
+++ b/synthesizer-dimensional.cabal
@@ -1,5 +1,5 @@
 Name:           synthesizer-dimensional
-Version:        0.7.0.2
+Version:        0.7.0.3
 License:        GPL
 License-File:   LICENSE
 Author:         Henning Thielemann <haskell@henning-thielemann.de>
@@ -32,14 +32,14 @@
   Location:    http://code.haskell.org/synthesizer/dimensional/
 
 Source-Repository this
-  Tag:         0.7.0.2
+  Tag:         0.7.0.3
   Type:        darcs
   Location:    http://code.haskell.org/synthesizer/dimensional/
 
 Library
   Build-Depends:
     synthesizer-core >=0.6 && <0.8,
-    transformers >=0.2 && <0.5,
+    transformers >=0.2 && <0.6,
     event-list >=0.1 && <0.2,
     non-negative >=0.1 && <0.2,
     numeric-prelude >=0.3 && <0.5,
