-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
sigma algebras? #53
Comments
Hi @cartazio , I really like this idea. Julia has a few different interval libraries: I like the ideas I've seen from @dpsanders , for example I this this package could be really helpful for this: The big questions I have currently are
|
This is a great idea. Unfortunately there is not much compatibility right now. Note that anything beyond Lebesgue measure / Dirac delta is more complicated, since in general it will need an integral over a density to be involved. |
Or (better?) to express everything in terms of the [cumulative] distribution function instead. |
Beyond R^n you will probably want something like https://github.com/JuliaManifolds/Manifolds.jl and work with atlases somehow? Or what context did you have in mind? |
Maybe IntervalSets? That seems intended for a use case like this.
For one dimension, yes. I haven't thought much about how to do this in higher dimensions. I've seen people use copulas (or is it copulae?), but I haven't worked with them much.
Maybe that's the right way, I'm not sure.
Mostly I want to have something that covers the common cases and is easily extensible beyond this. So maybe nothing too opinionated beyond the core stuff |
Yes, that's probably a good option since it can handle both closed and open sets, unlike IntervalArithmetic.jl.
Not my area, but looks interesting.
Maybe you literally want a |
That would be amazing! I had a similar use case and ended up hacking something together using intervals from the Intervals.jl package here. I liked that Intervals.jl has interval types parametrized by each endpoint being unbounded, open or closed. Another package that could be relevant here is DomainSets.jl. |
Allowing products of intervals should go a long way. |
There are a couple of general challenges:
At the same time, we obviously want lots of nice capabilities, so we need to try to find a good middle ground.
help?> IntervalSets.Interval
An Interval{L,R}(left, right) where L,R are :open or :closed is an
interval set containg x such that
1. left ≤ x ≤ right if L == R == :closed
2. left < x ≤ right if L == :open and R == :closed
3. left ≤ x < right if L == :closed and R == :open, or
4. left < x < right if L == R == :open I also added |
Fully agree! I was previously using julia> halfline = 0..∞
0..∞
julia> typeof(halfline)
Interval{:closed,:closed,Union{InfiniteArrays.Infinity, Int64}}
julia> in(1, halfline)
true
julia> in(-2, halfline)
false |
Following up on this as well (it's functionality I would love to have), i.e., to be able to call (Related discussion in #130) |
Thanks @nignatiadis . @oschulz and I were talking about this recently, and I think it's a good idea. I think a full representation of sigma algebras will always be intractable (but I'd love to be wrong about this). But for a given measure, there's usually a coarse representation for which the measure can be evaluated easily and efficiently. For univariate continuous (Lebesgue-dominated) measures intervals are a good fit. We could have something with finer granularity (disjoint sets of intervals, or interval trees) but that has a cost of heavier dependencies. But IntervalSets is very light, so that should be good. Happy to take a PR on this :) |
I agree, at least for univariate measures |
We definitely should add Oh, also - if we support truncation of measures (we should, where applicable), then getting the mass in a subspace could also be expressed as getting the mass of a truncated measure. |
Yes, we started some discussion of that here: I think we should prototype this for addition to MeasureBase. Let's discuss further here: |
depending on how you wanna use mesures on the reals, it seems to me that something like having measures provide a sorta of "valuation" function on the elements of their sigma algebras might be useful? (or at least the generators of the sigma algebras etc etc, lets ignore filtrations )
eg, for the Real line (and approximations thereof), the sigma algebra generator set would be intervals (open or closed or clopen etc), because we can define the lesbegue/riemann measure on these to be the length ?
would this allow eg, talking about dirac delta as a measure/distribution?
The text was updated successfully, but these errors were encountered: