Hets - the Heterogeneous Tool Set
Copyright(c) Mihai Codescu and Uni Bremen 2002-2006
LicenseGPLv2 or higher, see LICENSE.txt
Maintainermcodescu@informatik.uni-bremen.de
Stabilityprovisional
Portabilityportable
Safe HaskellSafe

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
SymbolName Id Source # 
Instance details

Defined in Common.SetColimit

Methods

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

SymbolName Token Source # 
Instance details

Defined in Common.SetColimit

Methods

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

SymbolName IRI Source # 
Instance details

Defined in Common.SetColimit

Methods

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

SymbolName ResolvedNode Source # 
Instance details

Defined in NeSyPatterns.Sign

Methods

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