Recursive reduction