Extract problem splitter.

This commit is contained in:
chriseth 2022-02-03 16:21:26 +01:00
parent 88c63c3054
commit 0a11aedc90

View File

@ -403,7 +403,7 @@ auto nonZeroEntriesInColumn(SolvingState const& _state, size_t _column)
} }
/// @returns vectors of column- and row-indices that are connected to the given column, /// @returns vectors of column- and row-indices that are connected to the given column,
/// in the sense of variables occuring in a constraint and constraints for variables. /// in the sense of variables occurring in a constraint and constraints for variables.
pair<vector<bool>, vector<bool>> connectedComponent(SolvingState const& _state, size_t _column) pair<vector<bool>, vector<bool>> connectedComponent(SolvingState const& _state, size_t _column)
{ {
solAssert(_state.variableNames.size() >= 2, ""); solAssert(_state.variableNames.size() >= 2, "");
@ -487,6 +487,13 @@ bool SolvingState::Compare::operator()(SolvingState const& _a, SolvingState cons
return _a.variableNames < _b.variableNames; return _a.variableNames < _b.variableNames;
} }
{
return
variableNames == _other.variableNames &&
bounds == _other.bounds &&
constraints == _other.constraints;
}
namespace namespace
{ {
string toString(rational const& _x) string toString(rational const& _x)