interval-algebra-0.6.0: An implementation of Allen's interval algebra for temporal logic
Copyright(c) NoviSci Inc 2020
LicenseBSD3
Maintainerbsaul@novisci.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

IntervalAlgebra.PairedInterval

Description

 
Synopsis

Documentation

data PairedInterval b a Source #

An Interval a paired with some other data of type b.

Instances

Instances details
Eq b => IntervalAlgebraic (PairedInterval b) Int Source # 
Instance details

Defined in IntervalAlgebra.PairedInterval

Methods

relate :: PairedInterval b Int -> PairedInterval b Int -> IntervalRelation (PairedInterval b Int) Source #

predicate' :: IntervalRelation (PairedInterval b Int) -> ComparativePredicateOf (PairedInterval b Int) Source #

predicates :: Set (IntervalRelation (PairedInterval b Int)) -> [ComparativePredicateOf (PairedInterval b Int)] Source #

predicate :: Set (IntervalRelation (PairedInterval b Int)) -> ComparativePredicateOf (PairedInterval b Int) Source #

toSet :: [IntervalRelation (PairedInterval b Int)] -> Set (IntervalRelation (PairedInterval b Int)) Source #

compose :: IntervalRelation (PairedInterval b Int) -> IntervalRelation (PairedInterval b Int) -> Set (IntervalRelation (PairedInterval b Int)) Source #

complement :: Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) Source #

intersection :: Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) Source #

union :: Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) Source #

converse :: Set (IntervalRelation (PairedInterval b Int)) -> Set (IntervalRelation (PairedInterval b Int)) Source #

equals :: ComparativePredicateOf (PairedInterval b Int) Source #

meets :: ComparativePredicateOf (PairedInterval b Int) Source #

metBy :: ComparativePredicateOf (PairedInterval b Int) Source #

before :: ComparativePredicateOf (PairedInterval b Int) Source #

after :: ComparativePredicateOf (PairedInterval b Int) Source #

overlaps :: ComparativePredicateOf (PairedInterval b Int) Source #

overlappedBy :: ComparativePredicateOf (PairedInterval b Int) Source #

starts :: ComparativePredicateOf (PairedInterval b Int) Source #

startedBy :: ComparativePredicateOf (PairedInterval b Int) Source #

precedes :: ComparativePredicateOf (PairedInterval b Int) Source #

precededBy :: ComparativePredicateOf (PairedInterval b Int) Source #

finishes :: ComparativePredicateOf (PairedInterval b Int) Source #

finishedBy :: ComparativePredicateOf (PairedInterval b Int) Source #

during :: ComparativePredicateOf (PairedInterval b Int) Source #

contains :: ComparativePredicateOf (PairedInterval b Int) Source #

unionPredicates :: [ComparativePredicateOf (PairedInterval b Int)] -> ComparativePredicateOf (PairedInterval b Int) Source #

(<|>) :: ComparativePredicateOf (PairedInterval b Int) -> ComparativePredicateOf (PairedInterval b Int) -> ComparativePredicateOf (PairedInterval b Int) Source #

disjointRelations :: Set (IntervalRelation (PairedInterval b Int)) Source #

withinRelations :: Set (IntervalRelation (PairedInterval b Int)) Source #

disjoint :: ComparativePredicateOf (PairedInterval b Int) Source #

notDisjoint :: ComparativePredicateOf (PairedInterval b Int) Source #

concur :: ComparativePredicateOf (PairedInterval b Int) Source #

within :: ComparativePredicateOf (PairedInterval b Int) Source #

enclose :: ComparativePredicateOf (PairedInterval b Int) Source #

enclosedBy :: ComparativePredicateOf (PairedInterval b Int) Source #

Ord a => Intervallic (PairedInterval b) a Source # 
Instance details

Defined in IntervalAlgebra.PairedInterval

(Eq a, Eq b) => Eq (PairedInterval b a) Source # 
Instance details

Defined in IntervalAlgebra.PairedInterval

(Eq a, Eq b, Ord a, Show a) => Ord (PairedInterval b a) Source #

Defines A total ordering on 'PairedInterval b a' based on the 'Interval a' part.

Instance details

Defined in IntervalAlgebra.PairedInterval

(Ord a, Show a, Show b) => Show (PairedInterval b a) Source # 
Instance details

Defined in IntervalAlgebra.PairedInterval

mkPairedInterval :: b -> Interval a -> PairedInterval b a Source #

Make a paired interval.

pairData :: PairedInterval b a -> b Source #

Gets the data (i.e. non-interval) part of a PairedInterval.

intervals :: Ord a => [PairedInterval b a] -> [Interval a] Source #

Gets the intervals from a list of paired intervals.

makePairPredicate :: IntervalAlgebraic (PairedInterval b) a => ComparativePredicateOf (Interval a) -> ComparativePredicateOf b -> ComparativePredicateOf (PairedInterval b a) Source #

Takes a predicate of intervals and a predicate on the data part of a paired interval to create a single predicate such that both input predicates should hold.