Copyright | (c) Mihai Codescu and Uni Bremen 2002-2006 |
---|---|

License | GPLv2 or higher, see LICENSE.txt |

Maintainer | mcodescu@informatik.uni-bremen.de |

Stability | provisional |

Portability | portable |

Safe Haskell | Safe |

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 #

#### Instances

SymbolName Id Source # | |

SymbolName Token Source # | |

SymbolName IRI Source # | |

SymbolName ResolvedNode Source # | |

Defined in NeSyPatterns.Sign addString :: (ResolvedNode, String) -> ResolvedNode Source # |