Hets - the Heterogeneous Tool Set
Copyright (c) Mihai Codescu and Uni Bremen 2002-2006 GPLv2 or higher, see LICENSE.txt mcodescu@informatik.uni-bremen.de provisional portable Safe

Common.SetColimit

Description

Computes the colimit of an arbitrary diagram in Set: - the set is the disjoint union of all sets in the diagram (which we obtain by pairing elements with the node number) factored by the equivalence generated by the pairs (x, f_i(x)), with i an arrow in the diagram - structural morphisms are factorizations

# Documentation

computeColimitSet :: Ord a => Gr (Set a) (Int, Map a a) -> (Set (a, Node), Map Node (Map a (a, Node))) Source #

computeColimitRel :: (Ord a, SymbolName a) => Gr (Relation a a) (Int, Map a a) -> (Relation a a, Map Node (Map a a)) Source #

colimitRel :: Ord a => [(Int, Relation a a)] -> Map Node (Map a a) -> Relation a a Source #

addIntToSymbols :: SymbolName a => (Set (a, Node), Map Node (Map a (a, Node))) -> (Set a, Map Node (Map a a)) Source #

class (Eq a, Ord a) => SymbolName a where Source #

Methods

addString :: (a, String) -> a Source #

#### Instances

Instances details
 Source # Instance detailsDefined in Common.SetColimit MethodsaddString :: (Id, String) -> Id Source # Source # Instance detailsDefined in Common.SetColimit MethodsaddString :: (Token, String) -> Token Source # Source # Instance detailsDefined in Common.SetColimit MethodsaddString :: (IRI, String) -> IRI Source # Source # Instance detailsDefined in NeSyPatterns.Sign MethodsaddString :: (ResolvedNode, String) -> ResolvedNode Source #