-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathAbstract-Morphism.html
9 lines (9 loc) · 26 KB
/
Abstract-Morphism.html
1
2
3
4
5
6
7
8
9
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Abstract.Morphism</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Abstract-Morphism.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Abstract.Morphism.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">verigraph-1.1.1: Software specification and verification tool based on graph rewriting.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe</td></tr><tr><th>Language</th><td>Haskell2010</td></tr></table><p class="caption">Abstract.Morphism</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">class</span> <a href="../base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> m => <a href="#t:Morphism">Morphism</a> m <span class="keyword">where</span><ul class="subs"><li><span class="keyword">type</span> <a href="#t:Obj">Obj</a> m :: <a href="../base-4.9.1.0/Data-Kind.html#t:-42-">*</a></li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:MorphismType">MorphismType</a><ul class="subs"><li>= <a href="#v:GenericMorphism">GenericMorphism</a></li><li>| <a href="#v:Monomorphism">Monomorphism</a></li><li>| <a href="#v:Epimorphism">Epimorphism</a></li><li>| <a href="#v:Isomorphism">Isomorphism</a></li></ul></li><li class="src short"><span class="keyword">type</span> <a href="#t:Span">Span</a> m = (m, m)</li><li class="src short"><span class="keyword">class</span> <a href="Abstract-Morphism.html#t:Morphism">Morphism</a> m => <a href="#t:FindMorphism">FindMorphism</a> m <span class="keyword">where</span><ul class="subs"></ul></li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a href="../base-4.9.1.0/Data-Eq.html#t:Eq">Eq</a> m => <a id="t:Morphism" class="def">Morphism</a> m <span class="keyword">where</span> <a href="src/Abstract.Morphism.html#Morphism" class="link">Source</a> <a href="#t:Morphism" class="selflink">#</a></p><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Abstract-Morphism.html#v:compose">compose</a>, <a href="Abstract-Morphism.html#v:domain">domain</a>, <a href="Abstract-Morphism.html#v:codomain">codomain</a>, <a href="Abstract-Morphism.html#v:id">id</a>, <a href="Abstract-Morphism.html#v:isMonomorphism">isMonomorphism</a>, <a href="Abstract-Morphism.html#v:isEpimorphism">isEpimorphism</a>, <a href="Abstract-Morphism.html#v:isIsomorphism">isIsomorphism</a></p></div><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a id="t:Obj" class="def">Obj</a> m :: <a href="../base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="src/Abstract.Morphism.html#Obj" class="link">Source</a> <a href="#t:Obj" class="selflink">#</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:compose" class="def">compose</a> :: m -> m -> m <a href="src/Abstract.Morphism.html#compose" class="link">Source</a> <a href="#v:compose" class="selflink">#</a></p><div class="doc"><p>Apply the first argument first (compose f g = g . f)</p></div><p class="src"><a id="v:domain" class="def">domain</a> :: m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m <a href="src/Abstract.Morphism.html#domain" class="link">Source</a> <a href="#v:domain" class="selflink">#</a></p><p class="src"><a id="v:codomain" class="def">codomain</a> :: m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m <a href="src/Abstract.Morphism.html#codomain" class="link">Source</a> <a href="#v:codomain" class="selflink">#</a></p><p class="src"><a id="v:id" class="def">id</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> m <a href="src/Abstract.Morphism.html#id" class="link">Source</a> <a href="#v:id" class="selflink">#</a></p><p class="src"><a id="v:isMonomorphism" class="def">isMonomorphism</a> :: m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isMonomorphism" class="link">Source</a> <a href="#v:isMonomorphism" class="selflink">#</a></p><p class="src"><a id="v:isEpimorphism" class="def">isEpimorphism</a> :: m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isEpimorphism" class="link">Source</a> <a href="#v:isEpimorphism" class="selflink">#</a></p><p class="src"><a id="v:isIsomorphism" class="def">isIsomorphism</a> :: m -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isIsomorphism" class="link">Source</a> <a href="#v:isIsomorphism" class="selflink">#</a></p></div><div class="subs instances"><p id="control.i:Morphism" class="caption collapser" onclick="toggleSection('i:Morphism')">Instances</p><div id="section.i:Morphism" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Morphism:Morphism:1" class="instance expander" onclick="toggleSection('i:ic:Morphism:Morphism:1')"></span> <a href="Abstract-Morphism.html#t:Morphism">Morphism</a> (<a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b)</span> <a href="src/Abstract.Morphism.html#line-260" class="link">Source</a> <a href="#t:Morphism" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Morphism:Morphism:1" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b) :: <a href="../base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="src/Abstract.Morphism.html#Obj" class="link">Source</a> <a href="#t:Obj" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compose">compose</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b <a href="src/Abstract.Morphism.html#compose" class="link">Source</a> <a href="#v:compose" class="selflink">#</a></p><p class="src"><a href="#v:domain">domain</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b) <a href="src/Abstract.Morphism.html#domain" class="link">Source</a> <a href="#v:domain" class="selflink">#</a></p><p class="src"><a href="#v:codomain">codomain</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b) <a href="src/Abstract.Morphism.html#codomain" class="link">Source</a> <a href="#v:codomain" class="selflink">#</a></p><p class="src"><a href="#v:id">id</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b) -> <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b <a href="src/Abstract.Morphism.html#id" class="link">Source</a> <a href="#v:id" class="selflink">#</a></p><p class="src"><a href="#v:isMonomorphism">isMonomorphism</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isMonomorphism" class="link">Source</a> <a href="#v:isMonomorphism" class="selflink">#</a></p><p class="src"><a href="#v:isEpimorphism">isEpimorphism</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isEpimorphism" class="link">Source</a> <a href="#v:isEpimorphism" class="selflink">#</a></p><p class="src"><a href="#v:isIsomorphism">isIsomorphism</a> :: <a href="Graph-GraphMorphism.html#t:GraphMorphism">GraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isIsomorphism" class="link">Source</a> <a href="#v:isIsomorphism" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Morphism:Morphism:2" class="instance expander" onclick="toggleSection('i:ic:Morphism:Morphism:2')"></span> <a href="Abstract-Morphism.html#t:Morphism">Morphism</a> (<a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b)</span> <a href="src/Abstract.Morphism.html#line-23" class="link">Source</a> <a href="#t:Morphism" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Morphism:Morphism:2" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b) :: <a href="../base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="src/Abstract.Morphism.html#Obj" class="link">Source</a> <a href="#t:Obj" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compose">compose</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b <a href="src/Abstract.Morphism.html#compose" class="link">Source</a> <a href="#v:compose" class="selflink">#</a></p><p class="src"><a href="#v:domain">domain</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b) <a href="src/Abstract.Morphism.html#domain" class="link">Source</a> <a href="#v:domain" class="selflink">#</a></p><p class="src"><a href="#v:codomain">codomain</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b) <a href="src/Abstract.Morphism.html#codomain" class="link">Source</a> <a href="#v:codomain" class="selflink">#</a></p><p class="src"><a href="#v:id">id</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b) -> <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b <a href="src/Abstract.Morphism.html#id" class="link">Source</a> <a href="#v:id" class="selflink">#</a></p><p class="src"><a href="#v:isMonomorphism">isMonomorphism</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isMonomorphism" class="link">Source</a> <a href="#v:isMonomorphism" class="selflink">#</a></p><p class="src"><a href="#v:isEpimorphism">isEpimorphism</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isEpimorphism" class="link">Source</a> <a href="#v:isEpimorphism" class="selflink">#</a></p><p class="src"><a href="#v:isIsomorphism">isIsomorphism</a> :: <a href="TypedGraph-Morphism.html#t:TypedGraphMorphism">TypedGraphMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isIsomorphism" class="link">Source</a> <a href="#v:isIsomorphism" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Morphism:Morphism:3" class="instance expander" onclick="toggleSection('i:ic:Morphism:Morphism:3')"></span> <a href="Abstract-Morphism.html#t:Morphism">Morphism</a> (<a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b)</span> <a href="src/Abstract.Morphism.html#line-53" class="link">Source</a> <a href="#t:Morphism" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Morphism:Morphism:3" class="inst-details hide"><div class="subs associated-types"><p class="caption">Associated Types</p><p class="src"><span class="keyword">type</span> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b) :: <a href="../base-4.9.1.0/Data-Kind.html#t:-42-">*</a> <a href="src/Abstract.Morphism.html#Obj" class="link">Source</a> <a href="#t:Obj" class="selflink">#</a></p></div> <div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:compose">compose</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b <a href="src/Abstract.Morphism.html#compose" class="link">Source</a> <a href="#v:compose" class="selflink">#</a></p><p class="src"><a href="#v:domain">domain</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b) <a href="src/Abstract.Morphism.html#domain" class="link">Source</a> <a href="#v:domain" class="selflink">#</a></p><p class="src"><a href="#v:codomain">codomain</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b) <a href="src/Abstract.Morphism.html#codomain" class="link">Source</a> <a href="#v:codomain" class="selflink">#</a></p><p class="src"><a href="#v:id">id</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> (<a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b) -> <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b <a href="src/Abstract.Morphism.html#id" class="link">Source</a> <a href="#v:id" class="selflink">#</a></p><p class="src"><a href="#v:isMonomorphism">isMonomorphism</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isMonomorphism" class="link">Source</a> <a href="#v:isMonomorphism" class="selflink">#</a></p><p class="src"><a href="#v:isEpimorphism">isEpimorphism</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isEpimorphism" class="link">Source</a> <a href="#v:isEpimorphism" class="selflink">#</a></p><p class="src"><a href="#v:isIsomorphism">isIsomorphism</a> :: <a href="SndOrder-Morphism.html#t:RuleMorphism">RuleMorphism</a> a b -> <a href="../base-4.9.1.0/Data-Bool.html#t:Bool">Bool</a> <a href="src/Abstract.Morphism.html#isIsomorphism" class="link">Source</a> <a href="#v:isIsomorphism" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a id="t:MorphismType" class="def">MorphismType</a> <a href="src/Abstract.Morphism.html#MorphismType" class="link">Source</a> <a href="#t:MorphismType" class="selflink">#</a></p><div class="doc"><p>Enum for the types of morphisms that can be used / found</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a id="v:GenericMorphism" class="def">GenericMorphism</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a id="v:Monomorphism" class="def">Monomorphism</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a id="v:Epimorphism" class="def">Epimorphism</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a id="v:Isomorphism" class="def">Isomorphism</a></td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:MorphismType" class="caption collapser" onclick="toggleSection('i:MorphismType')">Instances</p><div id="section.i:MorphismType" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:MorphismType:Enum:1" class="instance expander" onclick="toggleSection('i:id:MorphismType:Enum:1')"></span> <a href="../base-4.9.1.0/Prelude.html#t:Enum">Enum</a> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a></span> <a href="src/Abstract.Morphism.html#line-21" class="link">Source</a> <a href="#t:MorphismType" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:MorphismType:Enum:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:succ">succ</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> <a href="#v:succ" class="selflink">#</a></p><p class="src"><a href="#v:pred">pred</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> <a href="#v:pred" class="selflink">#</a></p><p class="src"><a href="#v:toEnum">toEnum</a> :: <a href="../base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> <a href="#v:toEnum" class="selflink">#</a></p><p class="src"><a href="#v:fromEnum">fromEnum</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="../base-4.9.1.0/Data-Int.html#t:Int">Int</a> <a href="#v:fromEnum" class="selflink">#</a></p><p class="src"><a href="#v:enumFrom">enumFrom</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> [<a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a>] <a href="#v:enumFrom" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThen">enumFromThen</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> [<a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a>] <a href="#v:enumFromThen" class="selflink">#</a></p><p class="src"><a href="#v:enumFromTo">enumFromTo</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> [<a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a>] <a href="#v:enumFromTo" class="selflink">#</a></p><p class="src"><a href="#v:enumFromThenTo">enumFromThenTo</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> [<a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a>] <a href="#v:enumFromThenTo" class="selflink">#</a></p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:id:MorphismType:Show:2" class="instance expander" onclick="toggleSection('i:id:MorphismType:Show:2')"></span> <a href="../base-4.9.1.0/Text-Show.html#t:Show">Show</a> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a></span> <a href="src/Abstract.Morphism.html#line-21" class="link">Source</a> <a href="#t:MorphismType" class="selflink">#</a></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:id:MorphismType:Show:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:showsPrec">showsPrec</a> :: <a href="../base-4.9.1.0/Data-Int.html#t:Int">Int</a> -> <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showsPrec" class="selflink">#</a></p><p class="src"><a href="#v:show">show</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="../base-4.9.1.0/Data-String.html#t:String">String</a> <a href="#v:show" class="selflink">#</a></p><p class="src"><a href="#v:showList">showList</a> :: [<a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a>] -> <a href="../base-4.9.1.0/Text-Show.html#t:ShowS">ShowS</a> <a href="#v:showList" class="selflink">#</a></p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">type</span> <a id="t:Span" class="def">Span</a> m = (m, m) <a href="src/Abstract.Morphism.html#Span" class="link">Source</a> <a href="#t:Span" class="selflink">#</a></p></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="Abstract-Morphism.html#t:Morphism">Morphism</a> m => <a id="t:FindMorphism" class="def">FindMorphism</a> m <span class="keyword">where</span> <a href="src/Abstract.Morphism.html#FindMorphism" class="link">Source</a> <a href="#t:FindMorphism" class="selflink">#</a></p><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Abstract-Morphism.html#v:findMorphisms">findMorphisms</a>, <a href="Abstract-Morphism.html#v:induceSpanMorphism">induceSpanMorphism</a>, <a href="Abstract-Morphism.html#v:partialInjectiveMatches">partialInjectiveMatches</a>, <a href="Abstract-Morphism.html#v:findCospanCommuter">findCospanCommuter</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:findMorphisms" class="def">findMorphisms</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [m] <a href="src/Abstract.Morphism.html#findMorphisms" class="link">Source</a> <a href="#v:findMorphisms" class="selflink">#</a></p><div class="doc"><p>Given a type <strong><em>t</em></strong> of <code>MorphismType</code> and two objects <strong><em>A</em></strong> and <strong><em>B</em></strong>, it finds all the matches
m : A -> B in which m is of the type t</p></div><p class="src"><a id="v:findMonomorphisms" class="def">findMonomorphisms</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [m] <a href="src/Abstract.Morphism.html#findMonomorphisms" class="link">Source</a> <a href="#v:findMonomorphisms" class="selflink">#</a></p><div class="doc"><p>Given two objects A and B, finds all monomorphisms from A to B</p></div><p class="src"><a id="v:findEpimorphisms" class="def">findEpimorphisms</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [m] <a href="src/Abstract.Morphism.html#findEpimorphisms" class="link">Source</a> <a href="#v:findEpimorphisms" class="selflink">#</a></p><div class="doc"><p>Given two objects A and B, finds all epimorphisms from A to B</p></div><p class="src"><a id="v:findIsomorphisms" class="def">findIsomorphisms</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [m] <a href="src/Abstract.Morphism.html#findIsomorphisms" class="link">Source</a> <a href="#v:findIsomorphisms" class="selflink">#</a></p><div class="doc"><p>Given two objects A and B, finds all isomorphisms from A to B</p></div><p class="src"><a id="v:findAllMorphisms" class="def">findAllMorphisms</a> :: <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> <a href="Abstract-Morphism.html#t:Obj">Obj</a> m -> [m] <a href="src/Abstract.Morphism.html#findAllMorphisms" class="link">Source</a> <a href="#v:findAllMorphisms" class="selflink">#</a></p><div class="doc"><p>Given two objects A and B, finds all morphisms from A to B</p></div><p class="src"><a id="v:induceSpanMorphism" class="def">induceSpanMorphism</a> :: [m] -> [m] -> m <a href="src/Abstract.Morphism.html#induceSpanMorphism" class="link">Source</a> <a href="#v:induceSpanMorphism" class="selflink">#</a></p><div class="doc"><p>Given two lists of TypedGraphMorphism <code>fi : Ai -> B</code> and <code>gi : Ai -> C</code> it induces a Morphism
<code>h : B -> C</code> shuch that <code>h . fi = gi</code> for all <code>i</code>. The lists must have the same length and must
not be empty.</p></div><p class="src"><a id="v:partialInjectiveMatches" class="def">partialInjectiveMatches</a> :: m -> m -> [m] <a href="src/Abstract.Morphism.html#partialInjectiveMatches" class="link">Source</a> <a href="#v:partialInjectiveMatches" class="selflink">#</a></p><div class="doc"><p>Given a NAC <em>n : L -> N </em> and a match <em>m : L -> G</em>, finds the morphisms
from <em>N</em> to <em>G</em> that are injective out of the image of <em>n</em></p></div><p class="src"><a id="v:findCospanCommuter" class="def">findCospanCommuter</a> :: <a href="Abstract-Morphism.html#t:MorphismType">MorphismType</a> -> m -> m -> [m] <a href="src/Abstract.Morphism.html#findCospanCommuter" class="link">Source</a> <a href="#v:findCospanCommuter" class="selflink">#</a></p><div class="doc"><p>Given two TypedGraphMorphism <code>f : B -> A</code> and <code>g : C -> A</code> it finds a list of Morphisms
<code>hi : B -> C</code> shuch that <code>f . ¬g = hi</code> for all <code>i</code>.</p></div></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.3</p></div></body></html>