Pushed Utility function and hard constraint checking