</li>
<li><p>a morphism <span class="Math">\iota: K \rightarrow A</span> such that <span class="Math">\alpha \circ \iota \sim_{K,B} 0</span>,</p>
</li>
<li><p>a dependent function <span class="Math">u</span> mapping each morphism <span class="Math">\tau: T \rightarrow A</span> satisfying <span class="Math">\alpha \circ \tau \sim_{T,B} 0</span> to a morphism <span class="Math">u(\tau): T \rightarrow K</span> such that <span class="Math">\iota \circ u( \tau ) \sim_{T,A} \tau</span>.</p>
</li>
</ul>
<p>The triple <span class="Math">( K, \iota, u )</span> is called a <em>kernel</em> of <span class="Math">\alpha</span> if the morphisms <span class="Math">u( \tau )</span> are uniquely determined up to congruence of morphisms. We denote the object <span class="Math">K</span> of such a triple by <span class="Math">\mathrm{KernelObject}(\alpha)</span>. We say that the morphism <span class="Math">u(\tau)</span> is induced by the <em>universal property of the kernel</em>. <span class="Math">\\ </span> <span class="Math">\mathrm{KernelObject}</span> is a functorial operation. This means: for <span class="Math">\mu: A \rightarrow A', \nu: B \rightarrow B'</span>, <span class="Math">\alpha: A \rightarrow B</span>, <span class="Math">\alpha': A' \rightarrow B' such that \nu \circ \alpha \sim_{A,B'} \alpha' \circ \mu, we obtain a morphism \mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' )</span>.</p>
<p>The argument is a morphism <span class="Math">\alpha</span>. The output is the kernel <span class="Math">K</span> of <span class="Math">\alpha</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ KernelEmbedding</code>( <var class="Arg">alpha</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{KernelObject}(\alpha),A)</span></p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span>. The output is the kernel embedding <span class="Math">\iota: \mathrm{KernelObject}(\alpha) \rightarrow A</span>.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span> and an object <span class="Math">K = \mathrm{KernelObject}(\alpha)</span>. The output is the kernel embedding <span class="Math">\iota: K \rightarrow A</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ MorphismFromKernelObjectToSink</code>( <var class="Arg">alpha</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the zero morphism in <span class="Math">\mathrm{Hom}( \mathrm{KernelObject}(\alpha), B )</span></p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span>. The output is the zero morphism <span class="Math">0: \mathrm{KernelObject}(\alpha) \rightarrow B</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ MorphismFromKernelObjectToSinkWithGivenKernelObject</code>( <var class="Arg">alpha</var>, <var class="Arg">K</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the zero morphism in <span class="Math">\mathrm{Hom}( K, B )</span></p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span> and an object <span class="Math">K = \mathrm{KernelObject}(\alpha)</span>. The output is the zero morphism <span class="Math">0: K \rightarrow B</span>.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span>, a test object <span class="Math">T</span>, and a test morphism <span class="Math">\tau: T \rightarrow A</span> satisfying <span class="Math">\alpha \circ \tau \sim_{T,B} 0</span>. For convenience, the test object <var class="Arg">T</var> can be omitted and is automatically derived from <var class="Arg">tau</var> in that case. The output is the morphism <span class="Math">u(\tau): T \rightarrow \mathrm{KernelObject}(\alpha)</span> given by the universal property of the kernel.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span>, a test object <span class="Math">T</span>, a test morphism <span class="Math">\tau: T \rightarrow A</span> satisfying <span class="Math">\alpha \circ \tau \sim_{T,B} 0</span>, and an object <span class="Math">K = \mathrm{KernelObject}(\alpha)</span>. For convenience, the test object <var class="Arg">T</var> can be omitted and is automatically derived from <var class="Arg">tau</var> in that case. The outputis the morphism <span class="Math">u(\tau): T \rightarrow K</span> given by the universal property of the kernel.</p>
<p>The argument is a list <span class="Math">L = [ \alpha: A \rightarrow B, [ \mu: A \rightarrow A', \nu: B \rightarrow B' ], \alpha': A' \rightarrow B' ] of morphisms. The output is the morphism \mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' )</span> given by the functoriality of the kernel.</p>
<p>The arguments are three morphisms <span class="Math">\alpha: A \rightarrow B</span>, <span class="Math">\mu: A \rightarrow A', \alpha': A' \rightarrow B'</span>. The output is the morphism <span class="Math">\mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' ) given by the functoriality of the kernel.
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ KernelObjectFunctorialWithGivenKernelObjects</code>( <var class="Arg">s</var>, <var class="Arg">alpha</var>, <var class="Arg">mu</var>, <var class="Arg">alpha_prime</var>, <var class="Arg">r</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}( s, r )</span></p>
<p>The arguments are an object <span class="Math">s = \mathrm{KernelObject}( \alpha )</span>, three morphisms <span class="Math">\alpha: A \rightarrow B</span>, <span class="Math">\mu: A \rightarrow A', \alpha': A' \rightarrow B'</span>, and an object <span class="Math">r = \mathrm{KernelObject}( \alpha' ). The output is the morphism \mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' )</span> given by the functoriality of the kernel.</p>
<p>The arguments are an object <span class="Math">s = \mathrm{KernelObject}( \alpha )</span>, four morphisms <span class="Math">\alpha: A \rightarrow B</span>, <span class="Math">\mu: A \rightarrow A', \nu: B \rightarrow B'</span>, <span class="Math">\alpha': A' \rightarrow B', and an object r = \mathrm{KernelObject}( \alpha' )</span>. The output is the morphism <span class="Math">\mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' ) given by the functoriality of the kernel.
</li>
<li><p>a morphism <span class="Math">\epsilon: B \rightarrow K</span> such that <span class="Math">\epsilon \circ \alpha \sim_{A,K} 0</span>,</p>
</li>
<li><p>a dependent function <span class="Math">u</span> mapping each <span class="Math">\tau: B \rightarrow T</span> satisfying <span class="Math">\tau \circ \alpha \sim_{A, T} 0</span> to a morphism <span class="Math">u(\tau):K \rightarrow T</span> such that <span class="Math">u(\tau) \circ \epsilon \sim_{B,T} \tau</span>.</p>
</li>
</ul>
<p>The triple <span class="Math">( K, \epsilon, u )</span> is called a <em>cokernel</em> of <span class="Math">\alpha</span> if the morphisms <span class="Math">u( \tau )</span> are uniquely determined up to congruence of morphisms. We denote the object <span class="Math">K</span> of such a triple by <span class="Math">\mathrm{CokernelObject}(\alpha)</span>. We say that the morphism <span class="Math">u(\tau)</span> is induced by the <em>universal property of the cokernel</em>. <span class="Math">\\ </span> <span class="Math">\mathrm{CokernelObject}</span> is a functorial operation. This means: for <span class="Math">\mu: A \rightarrow A', \nu: B \rightarrow B'</span>, <span class="Math">\alpha: A \rightarrow B</span>, <span class="Math">\alpha': A' \rightarrow B' such that \nu \circ \alpha \sim_{A,B'} \alpha' \circ \mu, we obtain a morphism \mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}( \alpha' )</span>.</p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span>. The output is the cokernel <span class="Math">K</span> of <span class="Math">\alpha</span>.</p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span>. The output is the cokernel projection <span class="Math">\epsilon: B \rightarrow \mathrm{CokernelObject}( \alpha )</span>.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span> and an object <span class="Math">K = \mathrm{CokernelObject}(\alpha)</span>. The output is the cokernel projection <span class="Math">\epsilon: B \rightarrow \mathrm{CokernelObject}( \alpha )</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ MorphismFromSourceToCokernelObject</code>( <var class="Arg">alpha</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the zero morphism in <span class="Math">\mathrm{Hom}( A, \mathrm{CokernelObject}( \alpha ) )</span>.</p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span>. The output is the zero morphism <span class="Math">0: A \rightarrow \mathrm{CokernelObject}(\alpha)</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ MorphismFromSourceToCokernelObjectWithGivenCokernelObject</code>( <var class="Arg">alpha</var>, <var class="Arg">K</var> )</td><td class="tdright">( operation )</td></tr></table></div>
<p>Returns: the zero morphism in <span class="Math">\mathrm{Hom}( A, K )</span>.</p>
<p>The argument is a morphism <span class="Math">\alpha: A \rightarrow B</span> and an object <span class="Math">K = \mathrm{CokernelObject}(\alpha)</span>. The output is the zero morphism <span class="Math">0: A \rightarrow K</span>.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span>, a test object <span class="Math">T</span>, and a test morphism <span class="Math">\tau: B \rightarrow T</span> satisfying <span class="Math">\tau \circ \alpha \sim_{A, T} 0</span>. For convenience, the test object <var class="Arg">T</var> can be omitted and is automatically derived from <var class="Arg">tau</var> in that case. The output is the morphism <span class="Math">u(\tau): \mathrm{CokernelObject}(\alpha) \rightarrow T</span> given by the universal property of the cokernel.</p>
<p>The arguments are a morphism <span class="Math">\alpha: A \rightarrow B</span>, a test object <span class="Math">T</span>, a test morphism <span class="Math">\tau: B \rightarrow T</span> satisfying <span class="Math">\tau \circ \alpha \sim_{A, T} 0</span>, and an object <span class="Math">K = \mathrm{CokernelObject}(\alpha)</span>. For convenience, the test object <var class="Arg">T</var> can be omitted and is automatically derived from <var class="Arg">tau</var> in that case. The output is the morphism <span class="Math">u(\tau): K \rightarrow T</span> given by the universal property of the cokernel.</p>
<p>The argument is a list <span class="Math">L = [ \alpha: A \rightarrow B, [ \mu:A \rightarrow A', \nu: B \rightarrow B' ], \alpha': A' \rightarrow B' ]. The output is the morphism \mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}( \alpha' )</span> given by the functoriality of the cokernel.</p>
<p>The arguments are three morphisms <span class="Math">\alpha: A \rightarrow B, \nu: B \rightarrow B', \alpha': A' \rightarrow B'</span>. The output is the morphism <span class="Math">\mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}( \alpha' ) given by the functoriality of the cokernel.
<p>The arguments are an object <span class="Math">s = \mathrm{CokernelObject}( \alpha )</span>, three morphisms <span class="Math">\alpha: A \rightarrow B, \nu: B \rightarrow B', \alpha': A' \rightarrow B'</span>, and an object <span class="Math">r = \mathrm{CokernelObject}( \alpha' ). The output is the morphism \mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}( \alpha' )</span> given by the functoriality of the cokernel.</p>
<p>The arguments are an object <span class="Math">s = \mathrm{CokernelObject}( \alpha )</span>, four morphisms <span class="Math">\alpha: A \rightarrow B, \mu: A \rightarrow A', \nu: B \rightarrow B', \alpha': A' \rightarrow B', and an object r = \mathrm{CokernelObject}( \alpha' )</span>. The output is the morphism <span class="Math">\mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}( \alpha' ) given by the functoriality of the cokernel.
</li>
<li><p>a function <span class="Math">u_{\mathrm{in}}</span> mapping each object <span class="Math">A</span> to a morphism <span class="Math">u_{\mathrm{in}}(A): A \rightarrow Z</span>,</p>
</li>
<li><p>a function <span class="Math">u_{\mathrm{out}}</span> mapping each object <span class="Math">A</span> to a morphism <span class="Math">u_{\mathrm{out}}(A): Z \rightarrow A</span>.</p>
</li>
</ul>
<p>The triple <span class="Math">(Z, u_{\mathrm{in}}, u_{\mathrm{out}})</span> is called a <em>zero object</em> if the morphisms <span class="Math">u_{\mathrm{in}}(A)</span>, <span class="Math">u_{\mathrm{out}}(A)</span> are uniquely determined up to congruence of morphisms. We denote the object <span class="Math">Z</span> of such a triple by <span class="Math">\mathrm{ZeroObject}</span>. We say that the morphisms <span class="Math">u_{\mathrm{in}}(A)</span> and <span class="Math">u_{\mathrm{out}}(A)</span> are induced by the <em>universal property of the zero object</em>.</p>
<p>This is a convenience method. The argument is a cell <span class="Math">c</span>. The output is a zero object <span class="Math">Z</span> of the category <span class="Math">C</span> for which <span class="Math">c \in C</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ UniversalMorphismFromZeroObject</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{ZeroObject}, A)</span></p>
<p>The argument is an object <span class="Math">A</span>. The output is the universal morphism <spanclass="Math">u_{\mathrm{out}}: \mathrm{ZeroObject} \rightarrow A</span>.</p>
<p>The arguments are an object <span class="Math">A</span>, and a zero object <span class="Math">Z = \mathrm{ZeroObject}</span>. The output is the universal morphism <span class="Math">u_{\mathrm{out}}: Z \rightarrow A</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ UniversalMorphismIntoZeroObject</code>( <var class="Arg">A</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(A, \mathrm{ZeroObject})</span></p>
<p>The argument is an object <span class="Math">A</span>. The output is the universal morphism <spanclass="Math">u_{\mathrm{in}}: A \rightarrow \mathrm{ZeroObject}</span>.</p>
<p>The arguments are an object <span class="Math">A</span>, and a zero object <span class="Math">Z = \mathrm{ZeroObject}</span>. The output is the universal morphism <span class="Math">u_{\mathrm{in}}: A \rightarrow Z</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsomorphismFromZeroObjectToInitialObject</code>( <var class="Arg">C</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{ZeroObject}, \mathrm{InitialObject})</span></p>
<p>The argument is a category <span class="Math">C</span>. The output is the unique isomorphism <span class="Math">\mathrm{ZeroObject} \rightarrow \mathrm{InitialObject}</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsomorphismFromInitialObjectToZeroObject</code>( <var class="Arg">C</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{InitialObject}, \mathrm{ZeroObject})</span></p>
<p>The argument is a category <span class="Math">C</span>. The output is the unique isomorphism <span class="Math">\mathrm{InitialObject} \rightarrow \mathrm{ZeroObject}</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsomorphismFromZeroObjectToTerminalObject</code>( <var class="Arg">C</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{ZeroObject}, \mathrm{TerminalObject})</span></p>
<p>The argument is a category <span class="Math">C</span>. The output is the unique isomorphism <span class="Math">\mathrm{ZeroObject} \rightarrow \mathrm{TerminalObject}</span>.</p>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ IsomorphismFromTerminalObjectToZeroObject</code>( <var class="Arg">C</var> )</td><td class="tdright">( attribute )</td></tr></table></div>
<p>Returns: a morphism in <span class="Math">\mathrm{Hom}(\mathrm{TerminalObject}, \mathrm{ZeroObject})</span></p>
<p>The argument is a category <span class="Math">C</span>. The output is the unique isomorphism <span class="Math">\mathrm{TerminalObject} \rightarrow \mathrm{ZeroObject}</span>.</p>
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.