| 204 | } |
| 205 | |
| 206 | HighsDebugStatus debugHighsBasisConsistent(const HighsOptions& options, |
| 207 | const HighsLp& lp, |
| 208 | const HighsBasis& basis) { |
| 209 | // Cheap analysis of a HiGHS basis, checking vector sizes, numbers |
| 210 | // of basic/nonbasic variables |
| 211 | if (options.highs_debug_level < kHighsDebugLevelCheap) |
| 212 | return HighsDebugStatus::kNotChecked; |
| 213 | HighsDebugStatus return_status = HighsDebugStatus::kOk; |
| 214 | if (!basis.valid) return return_status; |
| 215 | bool consistent = isBasisConsistent(lp, basis); |
| 216 | if (!consistent) { |
| 217 | highsLogUser(options.log_options, HighsLogType::kError, |
| 218 | "HiGHS basis inconsistency\n"); |
| 219 | assert(consistent); |
| 220 | return_status = HighsDebugStatus::kLogicalError; |
| 221 | } |
| 222 | return return_status; |
| 223 | } |
| 224 | |
| 225 | HighsDebugStatus debugBasisRightSize(const HighsOptions& options, |
| 226 | const HighsLp& lp, |
no test coverage detected