Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • May 07 19:42
    schillic review_requested #2685
  • May 07 17:46
    schillic opened #2685
  • May 07 17:45

    schillic on intersectionarray

    remove convexity requirement in… (compare)

  • May 07 16:15
    schillic review_requested #146
  • May 07 16:06

    mforets on gh-pages

    build based on dfa3e18 (compare)

  • May 07 15:52
    schillic synchronize #146
  • May 07 15:52

    schillic on Airplane

    continue modeling Airplane (compare)

  • May 07 15:48

    mforets on gh-pages

    build based on 4e33d35 (compare)

  • May 07 15:36
    schillic opened #146
  • May 07 15:35

    schillic on Airplane

    continue modeling Airplane (compare)

  • May 07 14:48

    mforets on gh-pages

    build based on 9a1d574 (compare)

  • May 07 14:25

    mforets on gh-pages

    build based on 3cc9296 (compare)

  • May 07 14:14
    schillic synchronize #144
  • May 07 14:14

    schillic on DoublePendulum

    continue modeling DoublePendulum (compare)

  • May 07 14:12
    schillic synchronize #142
  • May 07 14:12

    schillic on TORA

    continue modeling TORA (compare)

  • May 07 13:14
    schillic review_requested #145
  • May 07 13:12

    mforets on gh-pages

    build based on bccf76c (compare)

  • May 07 13:00
    schillic opened #145
  • May 07 13:00

    schillic on Unicycle

    continue modeling Unicycle (compare)

Gustavo Goretkin
@goretkin
well, wait. To make sure I understand, it's not because of name collisions, right? We're talking about controlling dispatch, which is the only thing that types in julia are arguably for
So e.g. defining RecipesBase.@recipe function somefunction(arg1::LazySet) end)

So assuming that something like LazySet2 (but with a better name) is the right solution (I am not sure), then there is still a need to encode the information that is encoded by the type hierarchy now, e.g.

abstract type AbstractAffineMap{N, S<:LazySet{N}} <: LazySet{N} end

and

struct LinearMap{N<:Real, S<:LazySet{N}, NM, MAT<:AbstractMatrix{NM}} <: AbstractAffineMap{N, S}

Gustavo Goretkin
@goretkin
I mentioned them before. The only solution to this is "traits". In fact, if plot recipes used traits, then you probably don't even need LazySets. I'm not sure if LazySets.jl uses anything traits-like already. I (and lots of other julia people) use "traits" specifically to mean things that can control dispatch. So
isoperationtype(::Type{<:AbstractAffineMap}) = true is not a trait by this definition, since julia can't dispatch on true or false. But it can, however, dispatch on Val{true} and Val{false} (and for that matter, Val{true}() and Val{false}() as well)
Gustavo Goretkin
@goretkin
Marcelo Forets
@mforets
:thumbsup: LazySets does not use traits, but we have planned to do so for extending the type hierarchy with sets representations which are not convex
Marcelo Forets
@mforets
what is a good way to write a list of equations with documenter?
it uses aligned
Marcelo Forets
@mforets
Christian Schilling
@schillic
:+1:
Marcelo Forets
@mforets
FYI yesterday I added some mathematical details on LGG09 algorithm : https://juliareach.github.io/ReachabilityAnalysis.jl/dev/lib/algorithms/LGG09/#Homogeneous-case-1
Marcelo Forets
@mforets
Christian Schilling
@schillic
:+1:
Peng Yu
@yupbank
image.png
hello firends, wondering if i get some help around understanding this operation
Marcelo Forets
@mforets
hi
Peng Yu
@yupbank

For a discrete set GRnG \subset \mathbb{R}^n .
It is testing condition: zG\forall z \in G if zz spans a ray of cone(G)\operatorname{cone}(G).

Isn't it always true for all elements of GG ?

Marcelo Forets
@mforets
im not familiar with all the details of the paper (i think we have it referenced in a LazySets issue, but the method hasn't been implemented)
i see that line 8 comes from applying Proposition 4.3
what is ξ(x)\xi(x) by the way
it is the subset of GG that sums to xx
Peng Yu
@yupbank
yeah, in the every first iteration, it would be \emptyset
it’s picking yx+Gy \in x+G and then test yxy-x, which can be simiplified into zG z \in G and then test zz
Christian Schilling
@schillic
Marcelo Forets
@mforets
interesting, thx
. The ultimate goal is to scale up to large NeuralODE controllers for complicated CPS or biological tasks
i think there are some Julia people interested in these topics
Marcelo Forets
@mforets
theyseem to consider only singleton initial conditions?
Christian Schilling
@schillic
i haven't checked it. could be
Marcelo Forets
@mforets
nice thing is that we have almost every model in the benchmark already in Julia
Christian Schilling
@schillic
:)
Marcelo Forets
@mforets
r: initial radius in each dimension
that should be the specification of X0 around the points in the Appendix
im surprised that some of the results of Flow* are so coarse
Screenshot from 2020-12-18 08-30-04.png
that's what i get for the Brusselator example in their setting
Christian Schilling
@schillic
with Flow*?
Marcelo Forets
@mforets
with JuliaReach
but i mean, compare it with
Screenshot from 2020-12-18 08-32-08.png
maybe the parameter choices for the other tools were not good .. :)
Christian Schilling
@schillic
yeah
Marcelo Forets
@mforets
we should write a blog, or a short video showing benchmarks like the one above (fun for next year!)
Marcelo Forets
@mforets
i added the brusselator instance from the paper JuliaReach/ReachabilityAnalysis.jl#386
Marcelo Forets
@mforets
some people have changed the CI to github actions
i read the builds were faster. i was wondering if we should also change