Sparse polynomial zonotope sets (AbstractSparsePolynomialZonotope)
LazySets.AbstractSparsePolynomialZonotope — TypeAbstractSparsePolynomialZonotope{N} <: AbstractPolynomialZonotope{N}Abstract type for sparse polynomial zonotope sets.
Notes
See SparsePolynomialZonotope for a standard implementation of this interface.
Every concrete AbstractSparsePolynomialZonotope must define the following functions:
expmat(::AbstractSparsePolynomialZonotope)– return the exponent matrix (sparse PZ only)genmat_dep(::AbstractSparsePolynomialZonotope)– return the matrix of dependent generatorsgenmat_indep(::AbstractSparsePolynomialZonotope)– return the matrix of independent generators
The subtypes of AbstractSparsePolynomialZonotope (including abstract interfaces):
julia> subtypes(AbstractSparsePolynomialZonotope)
2-element Vector{Any}:
SimpleSparsePolynomialZonotope
SparsePolynomialZonotopeThis interface requires to implement the following functions:
LazySets.expmat — Methodexpmat(P::AbstractSparsePolynomialZonotope)Return the matrix of exponents of a sparse polynomial zonotope.
Input
P– sparse polynomial zonotope
Output
The matrix of exponents, where each column is a multidegree.
Notes
In the exponent matrix, each row corresponds to a parameter ($αₖ$ in the definition) and each column corresponds to a monomial.
LazySets.genmat_dep — Methodgenmat_dep(P::AbstractSparsePolynomialZonotope)Return the matrix of dependent generators of a sparse polynomial zonotope.
Input
P– sparse polynomial zonotope
Output
The matrix of dependent generators.
LazySets.genmat_indep — Methodgenmat_indep(P::AbstractSparsePolynomialZonotope)Return the matrix of independent generators of a sparse polynomial zonotope.
Input
P– sparse polynomial zonotope
Output
The matrix of independent generators.
This interface defines the following functions:
LazySets.nparams — Methodnparams(P::AbstractSparsePolynomialZonotope)Return the number of dependent parameters in the polynomial representation of a sparse polynomial zonotope.
Input
P– sparse polynomial zonotope
Output
The number of dependent parameters in the polynomial representation.
Notes
This number corresponds to the number of rows in the exponent matrix.
LazySets.API.ρ — Methodρ(d::AbstractVector, P::AbstractSparsePolynomialZonotope; [enclosure_method]=nothing)Bound the support function of $P$ in the direction $d$.
Input
d– directionP– sparse polynomial zonotopeenclosure_method– (optional; default:nothing) method to use for enclosure; anAbstractEnclosureAlgorithmfrom theRangeenclosures.jlpackage
Output
An overapproximation of the support function in the given direction.
Algorithm
This method implements Kochdumper [Koc22], Proposition 3.1.16.
LazySets.API.linear_combination — Methodlinear_combination(X::LazySet, Y::LazySet)Compute the linear combination of two sets.
Input
X– setY– set
Output
A set representing the linear combination of X and Y.
Notes
The linear combination of two sets $X$ and $Y$ is defined as
\[ \left\{\frac{1}{2}(1+λ)x + \frac{1}{2}(1-λ)y \mid x ∈ X, y ∈ Y, λ ∈ [-1, 1]\right\}.\]
If $X$ and $Y$ are convex, their linear combination is identical with the convex hull of their union $X ∪ Y$.
LazySets.API.linear_combination — MethodExtended help
linear_combination(P1::AbstractSparsePolynomialZonotope,
P2::AbstractSparsePolynomialZonotope)Algorithm
This method implements Kochdumper [Koc22], Proposition 3.1.25.
Output
A SimpleSparsePolynomialZonotope.
Undocumented implementations:
Inherited from LazySet:
an_elementareachebyshev_center_radiuscomplementconcretizeconstraintsconvex_hullcopy(::Type{LazySet})diametereltypeeltypeextremaextremahighhighisboundedisoperationispolyhedralispolyhedraltypeispolytopiclowlownormpolyhedronradiusrationalizerectifyreflectsingleton_listtosimplehreptranslatetranslate!triangulatetriangulate_facesverticesaffine_mapexponential_mapis_interior_pointprojectsamplescalecartesian_productconvex_hullexact_sumisapproxisdisjoint==isequivalent⊂⊆minkowski_differenceminkowski_sum
Inherited from AbstractPolynomialZonotope: