JuliaReach / LazySets.jl

Scalable symbolic-numeric set computations in Julia
https://juliareach.github.io/LazySets.jl/
Other
226 stars 32 forks source link

Lazy reflection of a set #1558

Open mforets opened 5 years ago

mforets commented 5 years ago

Given a convex set X, its opposite with respect to the origin is the set -X := {-x : x ∈ X}. This issue proposes to create a lazy oposite, Opposite(X) ( Reflection / point reflection wrt the origin).

ueliwechsler commented 4 years ago

Would this conceptually correspond to just defining a new type

struct Reflection
    X
end

and the overloading of the support value and vector as: support_value(d, R::Reflection) = support_value(-d, R.X) support_vector(d, R::Reflection) = -support_vector(-d, R.X)

schillic commented 4 years ago

Would this conceptually correspond to just defining a new type

struct Reflection
    X
end

and the overloading of the support value and vector as: support_value(d, R::Reflection) = support_value(-d, R.X) support_vector(d, R::Reflection) = -support_vector(-d, R.X)

Yes, and other operations are also straightforward, such as membership or linear_map.