simplified nondegenerated function