start implementing reduction rules