| 1827 | } |
| 1828 | |
| 1829 | void HighsCliqueTable::cleanupFixed(HighsDomain& globaldom) { |
| 1830 | HighsInt numcol = globaldom.col_upper_.size(); |
| 1831 | HighsInt oldnfixings = nfixings; |
| 1832 | for (HighsInt i = 0; i != numcol; ++i) { |
| 1833 | if (colDeleted[i] || !globaldom.isFixed(i)) continue; |
| 1834 | if (globaldom.col_lower_[i] != 1.0 && globaldom.col_lower_[i] != 0.0) |
| 1835 | continue; |
| 1836 | |
| 1837 | HighsInt fixval = static_cast<HighsInt>(globaldom.col_lower_[i]); |
| 1838 | CliqueVar v(i, 1 - fixval); |
| 1839 | |
| 1840 | vertexInfeasible(globaldom, v.col, v.val); |
| 1841 | if (globaldom.infeasible()) return; |
| 1842 | } |
| 1843 | |
| 1844 | if (nfixings != oldnfixings) propagateAndCleanup(globaldom); |
| 1845 | } |
| 1846 | |
| 1847 | HighsInt HighsCliqueTable::getNumImplications(HighsInt col) const { |
| 1848 | // first count all cliques as one implication, so that cliques of size two |
no test coverage detected