Skip to content

v1.5.0

Compare
Choose a tag to compare
@mforets mforets released this 02 Nov 22:48
· 4308 commits to master since this release
bda62ac

Announcements

This is the last release that supports Julia v0.6.

Features

  • added tohrep/tovrep for HPolytope/VPolytope (also fixes σ for VPolytope) (#603)
  • added == comparison between set types (#604)
  • added conversion from an AbstractHyperrectangle to a polygon or a polytope in constraint representation (#615)
  • added low and high methods for all AbstractHyperrectangle types (#618)
  • added emptiness check for HPolytopes/VPolytopes and their intersection (#624)
  • added a function to control the backend for Polyhedra.jl-related operations (default for Rational numeric types: :exact) (#625)
  • added concrete intersection for HPolytope and VPolytope (#633), for polytopic sets (relying on Polyhedra.jl) (#646), for HPolygons (#651), for HalfSpace and HPolytope (#765), and for HPolyhedron and AbstractPolytope (#774)
  • added empty intersection check for a compact set with Hyperplane (#650), a HalfSpace (#659), and an HPolytope (#713), and for two HalfSpaces (#782)
  • added many convert methods for polytopes (#636)
  • added vertices_list for CartesianProduct(Array), LinearMap, and ExponentialMap (#670)
  • added lazy intersection (support function only) for a compact set with a HalfSpace and Hyperplane (#677, #685, #694)
  • added overapproximate for lazy intersection (support function only) of a polytope with a compact set (#688) and a HalfSpace (#784)
  • added support function for most lazy operations (#716, #717, #719)
  • added conservative emptiness check option for Intersection (#723)
  • added constraints_list methods for VPolygon/VPolytope (#726), LineSegment (#728), Zonotope (#732), Ball1 (#735), HalfSpace (#763), and CartesianProduct(Array) (#761)
  • added isempty method for EmptySet (#741)
  • added constrained_dimensions method for unbounded sets (#760)
  • added HPolyhedron set type (#767)
  • added swap method for Intersection (#819)
  • added isempty methods for most set types (#859)

Bug fixes

  • renamed intersect to intersection for HPolytope/VPolytope (to be consistent with other concrete intersections) (#596)
  • fixed support for Julia v1.0 (#668)
  • fixed vertices_list for Zonotopes in non-2D dimensions (#673)
  • fixed support vector for HalfSpace (#748)
  • fixed binary method ambiguities (#857, #860)

Minor changes

  • renamed interfaces AbstractPointSymmetric and -Polytope to AbstractCentrallySymmetric and -Polytope (#588)
  • Improved norm for hyperrectangular sets (#592)
  • Faster vertices_list implementation for centrally symmetric polytopes with radius 0 (#590)
  • revised plotting of polytopic set types (enabled plotting of 2D VPolytopes without loading Polyhedra.jl; always plot the exact polytope by default (instead of a box approximation)) (#602)
  • removed dependencies Plots.jl and GR.jl (#648)
  • added aliases CompactSet and NonCompactSet (#649)
  • added alias isdisjoint for is_intersection_empty (#655)
  • linear_map tries to preserve the input type for polytopes (#636)
  • made Interval an AbstractHyperrectangle (#687)
  • added boundedness check for support vector of polytope (#711)
  • added constraints_list to AbstractPolytope interface (#734)
  • support vector for empty HPolytope now raises an error message (#752)
  • added a cache to Intersection; now emptiness is determined only once (#796)
  • generalized default is_intersection_empty method (#850)
  • avoid array insertion in iterative refinement (#863)