diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,4 +1,5 @@
 -*-change-log-*-
+	0.1.0.12 Adding type signatures to top level stuff
 	0.1.0.11 More inlining and specialisation
 	0.1.0.10 Fixed compile error whoops
 	0.1.0.9 Inlined/specialised a bunch of function, hueg speed increase
diff --git a/clifford.cabal b/clifford.cabal
--- a/clifford.cabal
+++ b/clifford.cabal
@@ -10,7 +10,7 @@
 -- PVP summary:      +-+------- breaking API changes
 --                   | | +----- non-breaking API additions
 --                   | | | +--- code changes with no API change
-version:             0.1.0.11
+version:             0.1.0.12
 
 -- A short (one-line) description of the package.
 synopsis:            A Clifford algebra library
diff --git a/src/Numeric/Clifford/Multivector.lhs b/src/Numeric/Clifford/Multivector.lhs
--- a/src/Numeric/Clifford/Multivector.lhs
+++ b/src/Numeric/Clifford/Multivector.lhs
@@ -415,11 +415,15 @@
     cosh x = converge $ shanksTransformation . compensatedRunningSum $ takeEvery 2 $ expTerms x
     sinh x = converge $ shanksTransformation . compensatedRunningSum $ takeEvery 2 $ tail $ expTerms x
 
+dot :: Multivector p q f -> Multivector p q f -> Multivector p q f
 dot a@(BladeSum _)  b@(BladeSum _) = mvNormalForm $ BladeSum [x `bDot` y | x <- mvTerms a, y <- mvTerms b]
+wedge::Multivector p q f -> Multivector p q f->Multivector p q f
 wedge a@(BladeSum _)  b@(BladeSum _) = mvNormalForm $ BladeSum [x `bWedge` y | x <- mvTerms a, y <- mvTerms b]
 
-(∧) = wedge :: Multivector p q f -> Multivector p q f -> Multivector p q f
-(⋅) = dot :: Multivector p q f -> Multivector p q f -> Multivector p q f
+(∧) :: Multivector p q f -> Multivector p q f -> Multivector p q f
+(∧) = wedge 
+(⋅) :: Multivector p q f -> Multivector p q f -> Multivector p q f
+(⋅) = dot 
 
 {-# INLINE reverseBlade #-}
 reverseBlade b = bladeNormalForm $ b & indices %~ reverse 
