A machine program for theorem-proving