diff --git a/pymbolic/mapper/__init__.py b/pymbolic/mapper/__init__.py index bac3b58c88b6cf894ee23765a4b35d15e4bfd5c9..0b59c975f1266f6ba8633dc8c19cc4d990c36e48 100644 --- a/pymbolic/mapper/__init__.py +++ b/pymbolic/mapper/__init__.py @@ -500,17 +500,9 @@ class IdentityMapper(Mapper): for child, orig_child in zip(children, expr.children)): return expr - from pymbolic.primitives import flattened_sum - return flattened_sum(children) - - def map_product(self, expr, *args, **kwargs): - children = [self.rec(child, *args, **kwargs) for child in expr.children] - if all(child is orig_child - for child, orig_child in zip(children, expr.children)): - return expr + return type(expr)(tuple(children)) - from pymbolic.primitives import flattened_product - return flattened_product(children) + map_product = map_sum def map_quotient(self, expr, *args, **kwargs): numerator = self.rec(expr.numerator, *args, **kwargs)