Skip to content

Releases: JuliaReach/LazySets.jl

v3.0.0

20 Nov 21:51
310cbef
Compare
Choose a tag to compare

LazySets v3.0.0

Diff since v2.14.2

Announcements

Contributors for this release:

Breaking changes

  • Adapt to Symbolics v6.1 (old versions are not supported anymore) (#3637)
  • Rename functions starting with is_ consistently; in particular, rename is_polyhedralispolyhedral and is_hyperplanarishyperplanar (#3627)
  • Remove RotatedHyperrectangle (#3592)
  • Disallow box_approximation for unbounded sets (#3553)
  • Remove + and - methods for Interval (#3614)
  • Let remove_redundant_constraints return an empty list if infeasible (#3623)

Features

  • Add general case to linear_map of Hyperplane (#3612)
  • Add point in Polygon check (#3628)

Enhancements

  • Add polyhedral check for complement method (#3562)
  • Avoid repeated creation of zero_box/sym_box (#3609)
  • Remove redundant convert methods (#3561)
  • Fast low/high/extrema for polyhedra (#3617)

Bug fixes

  • Fix intersection of LineSegments (#3630)
  • Fix VPolygon constructor in pre-v1.9 versions (#3650)
  • Fix HPolytope constructor with old Symbolics version (#3651)
  • Fix direction in alternative Line constructor (#3567)

Internal changes

  • Allow Symbolics v6.1 and SetProg v0.4 in tests (#3637)
  • Add commits since last release to README (#3639)
  • Merge metaprogramming loops (#3613)
  • Rename and move helper function arg_minmax (#3621)
  • Remove unused function minmax (#3620)
  • Split convert.jl into smaller files (#3618)
  • Allow IntervalMatrices v0.11 in tests (#3643)
  • Fix invalidations CI run (#3646)
  • Use Aqua v0.8.9 to test only for local ambiguities (#3645)
  • Update doctest for Julia v1.11 (#3647)
  • Bump codecov/codecov-action from 4 to 5 (#3648)
  • Revise documentation of Interval operations (#3551)
  • Make SymEngine tests robust for old Julia versions (#3652)
  • Use hcat in tests for old Julia versions (#3653)

Merged pull requests:

Closed issues:

  • Add point in nonconvex Polygon check (#3126)
  • Remove + and - methods for Interval (#3282)
  • Faster extrema of HPolytope/HPolyhedron in 1D (#3419)
  • Use only one interval instance for zero_itv / sym_itv (#3495)
  • Wrong intersection of line segments (#3629)

v2.14.2

09 Aug 05:01
f7f3399
Compare
Choose a tag to compare

LazySets v2.14.2

Diff since v2.14.1

Announcements

Contributors for this release:

Enhancements

  • Update AbstractPolynomialZonotope interface; add AbstractSparsePolynomialZonotope interface (#3570, #3574)
  • Outsource Line to its own module (#3566)
  • Outsource DensePolynomialZonotope to its own module (#3571)
  • Outsource SimpleSparsePolynomialZonotope to its own module (#3573, #3578)
  • Outsource SparsePolynomialZonotope to its own module (#3575)
  • Outsource Line2D to its own module (#3577)
  • Outsource HParallelotope to its own module (#3579)
  • Outsource Tetrahedron to its own module (#3580)
  • Outsource Polygon to its own module (#3581)
  • Outsource VPolytope to its own module (#3582)
  • Outsource HPolytope to its own module (#3583)
  • Outsource VPolygon to its own module (#3584)
  • Outsource Star to its own module (#3585)
  • Outsource Hyperrectangle to its own module (#3587)
  • Outsource HPolyhedron to its own module (#3589)
  • Outsource Hyperplane to its own module (#3590)
  • Outsource HalfSpace to its own module (#3591)
  • Outsource HPolygon to its own module (#3593)
  • Outsource Zonotope to its own module (#3594, #3606)
  • Clean-up after outsourcing:
    • Replace StaticArrays by StaticArraysCore in BallInfModule (#3588)
    • Some fixes for outsourced set types (#3595)
    • Resolve submodule dependencies via Requires (#3597, #3602)
    • Remove duplicate exports (#3598)
    • Outsource convert methods to set modules (#3601)
    • Split Require functions for set modules (#3603)
    • Outsource binary operations to set modules (#3604)
    • Do not export internal functions from set modules (#3605)
    • Rename load_* functions in set modules (#3607)
    • Make StarModule independent of HPolytopeModule (#3615)
    • Remove redundant _vertices_list methods (#3616)
    • Clean up dependencies and reorder includes (#3619)
    • Add namespaces for linter warnings (#3622)
    • Share convert code between HPoly (#3624)
    • Share common SymEngine code (#3626)
  • Support VPolygon constructor from SMatrix (#3632)

Bug fixes

  • Do not export internal function (#3572)
  • Make rand of Tetrahedron consistent (#3608)
  • Fix convert of HPolyhedron from Polyhedra.HRep (#3611)
  • Rename and fix a pirating but unused free_symbols method (to _free_symbols) (#3610)

Internal changes

  • Add test for non-square linear_map of Interval (#3568)
  • Fix docs error (#3569)
  • Add tests for SSPZ (#3576)
  • Add prefix IA. to interval in tests consistently (#3586)
  • Fix namespace warnings in linter (#3596)
  • Add tests for SymEngine code (#3610)

Merged pull requests:

Closed issues:

  • vertices_list returns Float64 type for Float32 type input (#3393)
  • UndefVarError: IntervalBox not defined on 'using' (#3599)
  • VPolygon(M::SMatrix) errors (#3631)

v2.14.1

10 Jul 18:08
4ce160d
Compare
Choose a tag to compare

LazySets v2.14.1

Diff since v2.14.0

Announcements

Contributors for this release:

Features

  • Add more and better operations for Interval (#3533)

Enhancements

  • Allow SymEngine v0.12 (#3541)
  • Make all API functions available in IntervalModule & EmptySetModule (#3545)
  • Outsource Ball1 to its own module (#3547)
  • Outsource Ball2 to its own module (#3549)
  • Outsource BallInf to its own module (#3550)
  • Outsource Ballp to its own module (#3548)
  • Outsource Ellipsoid to its own module (#3555)
  • Outsource LineSegment to its own module (#3556)
  • Outsource ZeroSet to its own module (#3557)
  • Outsource Singleton to its own module (#3558)
  • Outsource Universe to its own module (#3564)

Internal changes

  • Temporary fix for Symbolics doctest (#3542)
  • Add space in error message (#3544)
  • Define AbstractBallp interface functions (#3546)
  • Define AbstractSingleton interface function (#3560)
  • Update docs (#3559)
  • Add option for shorter tests, used in PkgEval (#3563)
  • Revise documentation of interface requirements (#3565)

Merged pull requests:

Closed issues:

  • Special sets in concrete projection (#1990)
  • Segfault when calling affine_map (#2278)

v2.14.0

27 Jun 18:13
413252e
Compare
Choose a tag to compare

LazySets v2.14.0

Diff since v2.13.0

Announcements

Contributors for this release:

Breaking changes

  • Remove symbol aliases of concrete operations ( and \) (#3528)
  • Remove redundant VectorIterator (#3529)
  • Remove membership test of number in Interval (#3534)

Features

  • Add MatrixSets with MatrixZonotope (not exported; planned to be outsourced later) (#3510)
  • Add center to API module (#3513)
  • Outsource Interval to its own module (#3520)
  • Outsource EmptySet to its own module (#3536)
  • Add SymEngine code to create HalfSpace/Hyperplane (#3532)

Enhancements

  • Make Interval's diameter consistent with radius (#3514)
  • Add radius for Interval (#3515)
  • Revise and test convert to Interval (#3517)
  • Add space in error message (#3523)
  • Revise translate and translate! (#3525)
  • Support is_interior_point for mixed numeric types (#3526)
  • Support ReachabilityBase v0.3 (#3537)

Bug fixes

  • Export missing function permute (#3521)
  • Fix overapproximate of (Simple)SparsePolynomialZonotope with Zonotope and dom (#3531)

Internal changes

  • Add JuliaHub and PkgEval badges (#3512)
  • Remove mince import (#3516)
  • More tests for split of Interval (#3518)
  • Tests for issubset between Intervals (#3519)
  • Fix Array package source in tests (#3524)
  • Allow passing "" argument to tests (#3522, #3535)
  • Move API in docs (#3527)
  • Add tests for API module (#3530)

Merged pull requests:

v2.13.0

14 May 18:54
e23125c
Compare
Choose a tag to compare

LazySets v2.13.0

Diff since v2.12.1

Announcements

Contributors for this release:

Breaking changes

  • Outsource basetype to ReachabilityBase (this is technically breaking but was not meant to be part of the API) (#3503)

Features

  • Add convert between SparsePolynomialZonotope and Taylor model (#3447, #3498)
  • Zonotope overapproximation of intersection between zonotope and axis-aligned half-space based on ICP (#3457)
  • Add convert from zonotopic set to Hyperrectangle (#3484)
  • Add permute for Zonotope (#3485)
  • Add permute for HalfSpace, HPolytope, HPolyhedron (#3487)
  • minkowski_sum for SparsePolynomialZonotope and zonotopic set (#3493)
  • extrema approximation for SparsePolynomialZonotope (#3494)
  • Add isempty and convex_hull for Polygon (#3499)
  • Non-uniform split for hyperrectangles (#3505)

Enhancements

  • Replace Integer by Int (#3443)
  • Generalize order-reducing overapproximate method (#3444)
  • Use exact LP solver for sets represented with integers (#3486)
  • Better equivalence check of singleton and zonotope (#3489)
  • Outsource documentation to new API module (#3497)
  • Let binary convex_hull with EmptySet fall back to the unary method (#3500)
  • Let remove_redundant_generators remove almost-zero columns (#3504)

Bug fixes

  • Fix membership test in zonotope without generators (#3488)
  • Fix reduce_order for SPZ of smaller order (#3492)
  • Fix projection of polyhedron in unconstrained dimensions (#3501)

Internal changes

  • Bring back IntervalConstraintProgramming in tests (#3482)
  • Use Unicode symbols in documentation (#3496)
  • Bump compat for Makie v0.21 in tests (#3508)

Merged pull requests:

Closed issues:

  • Remove empty sets in concrete intersection with a set union (#2158)

v2.12.1

11 Apr 15:09
30e3a39
Compare
Choose a tag to compare

LazySets v2.12.1

Diff since v2.12.0

Announcements

Contributors for this release:

Bug fixes

  • Add missing convert methods for HPolytope/HPolyhedron (#3491)

Merged pull requests:

  • Add missing convert methods for HPolytope/HPolyhedron (#3491) (@schillic)

v2.12.0

10 Apr 05:10
53387f0
Compare
Choose a tag to compare

LazySets v2.12.0

Diff since v2.11.4

Announcements

Contributors for this release:

Breaking changes

  • Change keyword argument in Zonotope overapproximation of Taylor model (#3446)

Features

  • Add cartesian_product for SparsePolynomialZonotope (#3438)
  • Add translate for most lazy operations (#3474)
  • Add reduce_order for Zonotope with static matrix (#3467, #3476)
  • Add overapproximate of zonotopic unions with Zonotope (#3458)
  • Add convert methods for HPolytope/HPolyhedron with fixed vector type (#3466)
  • Add decompose for fixed target type (with overapproximation) (#3468)

Enhancements

  • Remove redundant generators in Zonotope overapproximations of Taylor model and SparsePolynomialZonotope (#3446)
  • Fix unbound args (#3461)
  • Fix piracies (<=, activate_assertions, deactivate_assertions, rand) (#3462, #3463, #3481)
  • Revise rectify of polyhedra (filter out empty sets) (#3469, #3479)

Internal changes

  • Split and revise documentation pages (#3436)
  • Revise CI scripts (#3437)
  • Replace $ with double backticks (#3445)
  • Run Aqua in tests and fix problems (#3439, #3451)
  • Fix Codecov (#3452)
  • Minor fixes (#3454)
  • Fix invalid character (#3460)
  • Remove Javis from test dependencies (#3465)
  • Remove redundant calls to uniqueID (#3448)
  • Move PkgVersion code to central place (#3459)
  • Use eachindex/axes instead of 1:length/1:size (#3464)
  • Remove precompile statement (#3470)
  • Make test conditional on IntervalArithmetic version (#3477)
  • Run doctests when building docs instead of tests (#3478)
  • Add Aqua badge (#3453)

Merged pull requests:

Closed issues:

  • Concrete translation of lazy operations (#1193)
  • Fix piracies (#3449)
  • Fix unbound args (#3450)
  • Convex hull algorithm from Polyhedra.jl produces invalid constraints (#3456)

v2.11.4

31 Jan 14:41
306a748
Compare
Choose a tag to compare

LazySets v2.11.4

Diff since v2.11.3

Announcements

Contributors for this release:

Features

  • Add plotting of SparsePolynomialZonotope (#3429)
  • box_approximation of Taylor model (#3432)

Internal changes

  • Code formatting #3430
  • Ignore CI results of Julia v1.6 runs (because it is mostly stalled nowadays) #3431

Merged pull requests:

v2.11.3

19 Jan 17:23
7771a8b
Compare
Choose a tag to compare

LazySets v2.11.3

Diff since v2.11.2

Announcements

Contributors for this release:

Enhancements

  • Avoid using .RangeEnclosures and simplify init functions #3426

Bug fixes

  • Fix linear_map of AbstractZonotope for 1D output #3428

Merged pull requests:

v2.11.2

05 Jan 16:19
6271834
Compare
Choose a tag to compare

LazySets v2.11.2

Diff since v2.11.1

Announcements

Contributors for this release:

Features

  • Better vertices_list of 1D HPolytope (#3415)

Enhancements

  • Use extended switching logic for SDP solver (avoids warning about function redefinition) (#3418)

Bug fixes

  • Fix _two_points_1d! (#3415)
  • Fix Inclusion of zonotope without generators in polyhedron (#3417)

Merged pull requests:

Closed issues:

  • convex_hull of two 1D points modifies points in-place (#3414)
  • Inclusion of zonotope without generators in polyhedron (#3416)