module Relations where import Sets type Relation a b = Set (a,b) composeRelations :: (Eq a, Eq b, Eq c) => Relation a b -> Relation b c -> Relation a c isReflexive :: Eq a => Set a -> Relation a a -> Bool isSymmetric :: Eq a => Relation a a -> Bool isTransitive :: Eq a => Relation a a -> Bool isEquivalence :: Eq a => Set a -> Relation a a -> Bool