Open
Description
In #2482, we changed that Intersection
with a HalfSpace
argument automatically simplifies, e.g., to HPolyhedron
. While this sounded reasonable, it breaks the assumption that Intersection
always results in an Intersection
object. The library has at least one place where this is assumed:
LazySets.jl/src/LazyOperations/Rectification.jl
Lines 535 to 537 in 264de96
Here, cap
can be an HPolyhedron
instead of the expected Intersection
.
julia> rectify(rand(HalfSpace))
ERROR: MethodError: no method matching set_isempty!(::HPolyhedron{Float64, Vector{Float64}}, ::Bool)
Should we undo this change and rather leave this behavior to the concrete intersection
operation?