polynomial reductions