UMinho Haskell Libraries (2006.06.14)ContentsIndex
Data.Relation.Folds
Documentation
type SoP a b = Set (a, b)
type PoP a b = (a, b) -> Bool
type MoP a b = FiniteMap a (Set b)
emptySoP :: SoP a b
emptyPoP :: PoP a b
emptyMoP :: MoP a b
invSoP :: (Ord a, Ord b) => SoP a b -> SoP b a
invPoP :: PoP a b -> PoP b a
invMoP :: (Ord a, Ord b) => MoP a b -> MoP b a
compSoP :: (Ord a, Eq b, Ord c) => SoP b c -> SoP a b -> SoP a c
compPoP :: PoP b c -> PoP a b -> PoP a c
compMoP :: (Ord a, Ord c, Ord b) => MoP b c -> MoP a b -> MoP a c
unionSoP :: (Ord a, Ord b) => SoP a b -> SoP a b -> SoP a b
unionMoP :: (Ord a, Ord b) => MoP a b -> MoP a b -> MoP a b
foldSet :: (a -> v -> v) -> v -> Set a -> v
foldSoP :: (a -> b -> v -> v) -> v -> SoP a b -> v
foldMoP :: (a -> b -> v -> v) -> v -> MoP a b -> v
class Fold r a b | r -> a b where
Methods
fold :: (a -> b -> v -> v) -> v -> r -> v
show/hide Instances
Fold (SoP a b) a b
unfoldSet :: Ord a => (u -> Either () (a, u)) -> u -> Set a
unfoldSoP :: (Ord a, Ord b) => (u -> Either () (a, b, u)) -> u -> SoP a b
unfoldMoP :: (Ord a, Ord b) => (u -> Either () (a, b, u)) -> u -> MoP a b
class Unfold r a b | r -> a b where
Methods
unfold :: (u -> Either () (a, b, u)) -> u -> r
show/hide Instances
(Ord a, Ord b) => Unfold (MoP a b) a b
(Ord a, Ord b) => Unfold (SoP a b) a b
empty :: Unfold r a b => r
add :: Unfold r a b => a -> b -> u -> r
inv :: (Unfold r' b a, Fold r a b) => r -> r'
inv' :: (Unfold r' b a, Fold r a b) => r -> r'
pairs :: Fold r a b => r -> [(a, b)]
comp :: (Fold xy x y, Fold yz y z, Eq y, Unfold xz x z) => yz -> xy -> xz
unionr :: (Fold r' a b, Unfold r a b) => r -> r' -> r
unionl :: (Fold r a b, Unfold r' a b) => r -> r' -> r'
Produced by Haddock version 0.7