// A solution to the 0-1 problem using // constrain and generate 2lp_main() { continuous X[3]; // constrain and(int i=0;i<3;i++) X[i] <= 1; 2*X[0] + 2*X[1] - X[2] == 1; X[0] + 4*X[1] + X[2] == 2; // generate and(int i=0;i<3;i++) either X[i] == 0; or X[i] ==1; // print results and(int i=0;i<3;i++) printf("X[%d] is %.0f\n",i,X[i]); }