necessary constraints