diff --git a/loopy/kernel.py b/loopy/kernel.py
index 25efd65cc36c7d2718a251da5b60ace57c1c5147..1fbea54935d9c73b5cc776dfcc255fe32bb17bcf 100644
--- a/loopy/kernel.py
+++ b/loopy/kernel.py
@@ -260,7 +260,7 @@ class Instruction(Record):
         def map_reduction(expr, rec):
             rec(expr.expr)
             for iname in expr.inames:
-                result.add(iname)
+                result.add(iname.lstrip("@"))
 
         from loopy.symbolic import ReductionCallbackMapper
         cb_mapper = ReductionCallbackMapper(map_reduction)
diff --git a/loopy/symbolic.py b/loopy/symbolic.py
index b4f5871bbd20bba22e5f9f4327442d95421f725d..2109174848de27b94cc11aeedfc78607cb1ca701 100644
--- a/loopy/symbolic.py
+++ b/loopy/symbolic.py
@@ -546,7 +546,7 @@ class IndexVariableFinder(CombineMapper):
         if self.include_reduction_inames:
             return result
         else:
-            return result - set(expr.inames)
+            return result - real_inames
 
 # }}}