Ancestral Intervals
Moonshine.Ω
— Typeconst Ω = Interval{:closed, :open, Float64}
Right semi-open interval.
See also AI
, AIs
and AncestralIntervals
.
Moonshine.AncestralIntervals
— Typestruct AncestralIntervals{T<:(AbstractVector{<:IntervalSets.AbstractInterval})} <: AbstractVector{IntervalSets.AbstractInterval}
Collection of intervals.
Meant to represent the set of intervals an edge/vertex is ancestral for. You might want to use the convenient shorthand AIs
instead.
Implements the iteration interface and the array interface.
Fields
data::AbstractVector{<:IntervalSets.AbstractInterval}
Constructors
AncestralIntervals(data; simplify)
defined at /home/runner/work/Moonshine.jl/Moonshine.jl/src/AncestralIntervals.jl:78
.
Arguments
If simplify = true
, intervals contained in data are simplified: see simplify!
for details.
Many methods assume AIs
to be simplified. You might want to disable simplification to optimize a sequence of operation, but you should probably simplify the final result.
Moonshine.AIs
— TypeMoonshine.simplify!
— Functionsimplify!(ωs)
Simplify an AIs
.
Two operations are performed:
- connected intervals are merged together (see
isdisconnected
); - intervals are sorted by left endpoint.
–Internal–
Moonshine.isdisconnected
— Functionisdisconnected(A, B)
True if intervals are disconnected, that is their intersection is empty and they do not share an endpoint.
–Internal–
Moonshine.closure
— Functionclosure(x)
Mathematical closure of x
Methods
closure(ωs)
defined at /home/runner/work/Moonshine.jl/Moonshine.jl/src/AncestralIntervals.jl:273
.