| 887 | } |
| 888 | |
| 889 | void rowlessMIP(Highs& highs) { |
| 890 | HighsLp lp; |
| 891 | HighsModelStatus require_model_status; |
| 892 | double optimal_objective; |
| 893 | lp.num_col_ = 2; |
| 894 | lp.num_row_ = 0; |
| 895 | lp.col_cost_ = {1, -1}; |
| 896 | lp.col_lower_ = {0, 0}; |
| 897 | lp.col_upper_ = {1, 1}; |
| 898 | lp.a_matrix_.start_ = {0, 0, 0}; |
| 899 | lp.a_matrix_.format_ = MatrixFormat::kColwise; |
| 900 | lp.sense_ = ObjSense::kMinimize; |
| 901 | lp.offset_ = 0; |
| 902 | lp.integrality_ = {HighsVarType::kInteger, HighsVarType::kInteger}; |
| 903 | require_model_status = HighsModelStatus::kOptimal; |
| 904 | optimal_objective = -1.0; |
| 905 | REQUIRE(highs.passModel(lp) == HighsStatus::kOk); |
| 906 | // Presolve reduces the LP to empty |
| 907 | solve(highs, kHighsOnString, require_model_status, optimal_objective); |
| 908 | solve(highs, kHighsOffString, require_model_status, optimal_objective); |
| 909 | } |
| 910 | |
| 911 | void rowlessMIP1(Highs& highs) { |
| 912 | HighsLp lp; |