hard-margin SVM