implements elimEquivilence