diff --git a/src/core/separators/codac2_SepWrapper.cpp b/src/core/separators/codac2_SepWrapper.cpp index 5e4959021..d5969c7de 100644 --- a/src/core/separators/codac2_SepWrapper.cpp +++ b/src/core/separators/codac2_SepWrapper.cpp @@ -27,6 +27,15 @@ BoxPair SepWrapper::separate(const IntervalVector& x) const IntervalVector::empty(x.size()) }; + // The parts of the box that are outside of the paving can not be classified + auto d = x.diff(_P.tree()->hull()); + for (const auto& di : d) + { + result.inner |= di; + result.outer |= di; + } + + // Inner computation for(const auto &box: _P.boxes(PavingInOut::outer_complem, x)) result.inner |= (box & x);