Implement a full reduction