diff --git a/pymbolic/mapper/__init__.py b/pymbolic/mapper/__init__.py
index 6d0a1591fb093e2c907fdc63fc59ed4c364fbd68..1d7c1e9d4ba78b151d737d71296e080a6b6e6495 100644
--- a/pymbolic/mapper/__init__.py
+++ b/pymbolic/mapper/__init__.py
@@ -588,6 +588,13 @@ class WalkMapper(RecursiveMapper):
         for i in indices_in_shape(expr.shape):
             self.rec(expr[i], *args)
 
+    def map_multivector(self, expr, *args):
+        if not self.visit(expr, *args):
+            return
+
+        for bits, coeff in expr.data.iteritems():
+            self.rec(coeff)
+
     def map_common_subexpression(self, expr, *args, **kwargs):
         if not self.visit(expr, *args):
             return