CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

Views: 418346
1
2
6 Universal Objects
3
4
5
6.1 Kernel
6
7
For a given morphism \alpha: A \rightarrow B, a kernel of \alpha consists of
8
three parts:
9
10
 an object K,
11
12
 a morphism \iota: K \rightarrow A such that \alpha \circ \iota
13
\sim_{K,B} 0,
14
15
 a dependent function u mapping each morphism \tau: T \rightarrow A
16
satisfying \alpha \circ \tau \sim_{T,B} 0 to a morphism u(\tau): T
17
\rightarrow K such that \iota \circ u( \tau ) \sim_{T,A} \tau.
18
19
The triple ( K, \iota, u ) is called a kernel of \alpha if the morphisms u(
20
\tau ) are uniquely determined up to congruence of morphisms. We denote the
21
object K of such a triple by \mathrm{KernelObject}(\alpha). We say that the
22
morphism u(\tau) is induced by the universal property of the kernel. \\ 
23
\mathrm{KernelObject} is a functorial operation. This means: for \mu: A
24
\rightarrow A', \nu: B \rightarrow B', \alpha: A \rightarrow B, \alpha': A'
25
\rightarrow B' such that \nu \circ \alpha \sim_{A,B'} \alpha' \circ \mu, we
26
obtain a morphism \mathrm{KernelObject}( \alpha ) \rightarrow
27
\mathrm{KernelObject}( \alpha' ).
28
29
6.1-1 KernelObject
30
31
KernelObject( alpha )  attribute
32
Returns: an object
33
34
The argument is a morphism \alpha. The output is the kernel K of \alpha.
35
36
6.1-2 KernelEmbedding
37
38
KernelEmbedding( alpha )  attribute
39
Returns: a morphism in \mathrm{Hom}(\mathrm{KernelObject}(\alpha),A)
40
41
The argument is a morphism \alpha: A \rightarrow B. The output is the kernel
42
embedding \iota: \mathrm{KernelObject}(\alpha) \rightarrow A.
43
44
6.1-3 KernelEmbeddingWithGivenKernelObject
45
46
KernelEmbeddingWithGivenKernelObject( alpha, K )  operation
47
Returns: a morphism in \mathrm{Hom}(K,A)
48
49
The arguments are a morphism \alpha: A \rightarrow B and an object K =
50
\mathrm{KernelObject}(\alpha). The output is the kernel embedding \iota: K
51
\rightarrow A.
52
53
6.1-4 KernelLift
54
55
KernelLift( alpha, tau )  operation
56
Returns: a morphism in \mathrm{Hom}(T,\mathrm{KernelObject}(\alpha))
57
58
The arguments are a morphism \alpha: A \rightarrow B and a test morphism
59
\tau: T \rightarrow A satisfying \alpha \circ \tau \sim_{T,B} 0. The output
60
is the morphism u(\tau): T \rightarrow \mathrm{KernelObject}(\alpha) given
61
by the universal property of the kernel.
62
63
6.1-5 KernelLiftWithGivenKernelObject
64
65
KernelLiftWithGivenKernelObject( alpha, tau, K )  operation
66
Returns: a morphism in \mathrm{Hom}(T,K)
67
68
The arguments are a morphism \alpha: A \rightarrow B, a test morphism \tau:
69
T \rightarrow A satisfying \alpha \circ \tau \sim_{T,B} 0, and an object K =
70
\mathrm{KernelObject}(\alpha). The output is the morphism u(\tau): T
71
\rightarrow K given by the universal property of the kernel.
72
73
6.1-6 AddKernelObject
74
75
AddKernelObject( C, F )  operation
76
Returns: nothing
77
78
The arguments are a category C and a function F. This operations adds the
79
given function F to the category for the basic operation KernelObject. F:
80
\alpha \mapsto \mathrm{KernelObject}(\alpha).
81
82
6.1-7 AddKernelEmbedding
83
84
AddKernelEmbedding( C, F )  operation
85
Returns: nothing
86
87
The arguments are a category C and a function F. This operations adds the
88
given function F to the category for the basic operation KernelEmbedding. F:
89
\alpha \mapsto \iota.
90
91
6.1-8 AddKernelEmbeddingWithGivenKernelObject
92
93
AddKernelEmbeddingWithGivenKernelObject( C, F )  operation
94
Returns: nothing
95
96
The arguments are a category C and a function F. This operations adds the
97
given function F to the category for the basic operation
98
KernelEmbeddingWithGivenKernelObject. F: (\alpha, K) \mapsto \iota.
99
100
6.1-9 AddKernelLift
101
102
AddKernelLift( C, F )  operation
103
Returns: nothing
104
105
The arguments are a category C and a function F. This operations adds the
106
given function F to the category for the basic operation KernelLift. F:
107
(\alpha, \tau) \mapsto u(\tau).
108
109
6.1-10 AddKernelLiftWithGivenKernelObject
110
111
AddKernelLiftWithGivenKernelObject( C, F )  operation
112
Returns: nothing
113
114
The arguments are a category C and a function F. This operations adds the
115
given function F to the category for the basic operation
116
KernelLiftWithGivenKernelObject. F: (\alpha, \tau, K) \mapsto u.
117
118
6.1-11 KernelObjectFunctorial
119
120
KernelObjectFunctorial( L )  operation
121
Returns: a morphism in \mathrm{Hom}( \mathrm{KernelObject}( \alpha ),
122
\mathrm{KernelObject}( \alpha' ) )
123
124
The argument is a list L = [ \alpha: A \rightarrow B, [ \mu: A \rightarrow
125
A', \nu: B \rightarrow B' ], \alpha': A' \rightarrow B' ] of morphisms. The
126
output is the morphism \mathrm{KernelObject}( \alpha ) \rightarrow
127
\mathrm{KernelObject}( \alpha' ) given by the functorality of the kernel.
128
129
6.1-12 KernelObjectFunctorial
130
131
KernelObjectFunctorial( alpha, mu, alpha_prime )  operation
132
Returns: a morphism in \mathrm{Hom}( \mathrm{KernelObject}( \alpha ),
133
\mathrm{KernelObject}( \alpha' ) )
134
135
The arguments are three morphisms \alpha: A \rightarrow B, \mu: A
136
\rightarrow A', \alpha': A' \rightarrow B'. The output is the morphism
137
\mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha' )
138
given by the functorality of the kernel.
139
140
6.1-13 KernelObjectFunctorialWithGivenKernelObjects
141
142
KernelObjectFunctorialWithGivenKernelObjects( s, alpha, mu, alpha_prime, r )  operation
143
Returns: a morphism in \mathrm{Hom}( s, r )
144
145
The arguments are an object s = \mathrm{KernelObject}( \alpha ), three
146
morphisms \alpha: A \rightarrow B, \mu: A \rightarrow A', \alpha': A'
147
\rightarrow B', and an object r = \mathrm{KernelObject}( \alpha' ). The
148
output is the morphism \mathrm{KernelObject}( \alpha ) \rightarrow
149
\mathrm{KernelObject}( \alpha' ) given by the functorality of the kernel.
150
151
6.1-14 AddKernelObjectFunctorialWithGivenKernelObjects
152
153
AddKernelObjectFunctorialWithGivenKernelObjects( C, F )  operation
154
Returns: nothing
155
156
The arguments are a category C and a function F. This operations adds the
157
given function F to the category for the basic operation
158
KernelObjectFunctorialWithGivenKernelObjects. F: (\mathrm{KernelObject}(
159
\alpha ), \alpha, \mu, \alpha', \mathrm{KernelObject}( \alpha' )) \mapsto
160
(\mathrm{KernelObject}( \alpha ) \rightarrow \mathrm{KernelObject}( \alpha'
161
)).
162
163
164
6.2 Cokernel
165
166
For a given morphism \alpha: A \rightarrow B, a cokernel of \alpha consists
167
of three parts:
168
169
 an object K,
170
171
 a morphism \epsilon: B \rightarrow K such that \epsilon \circ \alpha
172
\sim_{A,K} 0,
173
174
 a dependent function u mapping each \tau: B \rightarrow T satisfying
175
\tau \circ \alpha \sim_{A, T} 0 to a morphism u(\tau):K \rightarrow T
176
such that u(\tau) \circ \epsilon \sim_{B,T} \tau.
177
178
The triple ( K, \epsilon, u ) is called a cokernel of \alpha if the
179
morphisms u( \tau ) are uniquely determined up to congruence of morphisms.
180
We denote the object K of such a triple by \mathrm{CokernelObject}(\alpha).
181
We say that the morphism u(\tau) is induced by the universal property of the
182
cokernel. \\  \mathrm{CokernelObject} is a functorial operation. This means:
183
for \mu: A \rightarrow A', \nu: B \rightarrow B', \alpha: A \rightarrow B,
184
\alpha': A' \rightarrow B' such that \nu \circ \alpha \sim_{A,B'} \alpha'
185
\circ \mu, we obtain a morphism \mathrm{CokernelObject}( \alpha )
186
\rightarrow \mathrm{CokernelObject}( \alpha' ).
187
188
6.2-1 CokernelObject
189
190
CokernelObject( alpha )  attribute
191
Returns: an object
192
193
The argument is a morphism \alpha: A \rightarrow B. The output is the
194
cokernel K of \alpha.
195
196
6.2-2 CokernelProjection
197
198
CokernelProjection( alpha )  attribute
199
Returns: a morphism in \mathrm{Hom}(B, \mathrm{CokernelObject}( \alpha ))
200
201
The argument is a morphism \alpha: A \rightarrow B. The output is the
202
cokernel projection \epsilon: B \rightarrow \mathrm{CokernelObject}( \alpha
203
).
204
205
6.2-3 CokernelProjectionWithGivenCokernelObject
206
207
CokernelProjectionWithGivenCokernelObject( alpha, K )  operation
208
Returns: a morphism in \mathrm{Hom}(B, K)
209
210
The arguments are a morphism \alpha: A \rightarrow B and an object K =
211
\mathrm{CokernelObject}(\alpha). The output is the cokernel projection
212
\epsilon: B \rightarrow \mathrm{CokernelObject}( \alpha ).
213
214
6.2-4 CokernelColift
215
216
CokernelColift( alpha, tau )  operation
217
Returns: a morphism in \mathrm{Hom}(\mathrm{CokernelObject}(\alpha),T)
218
219
The arguments are a morphism \alpha: A \rightarrow B and a test morphism
220
\tau: B \rightarrow T satisfying \tau \circ \alpha \sim_{A, T} 0. The output
221
is the morphism u(\tau): \mathrm{CokernelObject}(\alpha) \rightarrow T given
222
by the universal property of the cokernel.
223
224
6.2-5 CokernelColiftWithGivenCokernelObject
225
226
CokernelColiftWithGivenCokernelObject( alpha, tau, K )  operation
227
Returns: a morphism in \mathrm{Hom}(K,T)
228
229
The arguments are a morphism \alpha: A \rightarrow B, a test morphism \tau:
230
B \rightarrow T satisfying \tau \circ \alpha \sim_{A, T} 0, and an object K
231
= \mathrm{CokernelObject}(\alpha). The output is the morphism u(\tau): K
232
\rightarrow T given by the universal property of the cokernel.
233
234
6.2-6 AddCokernelObject
235
236
AddCokernelObject( C, F )  operation
237
Returns: nothing
238
239
The arguments are a category C and a function F. This operations adds the
240
given function F to the category for the basic operation CokernelObject. F:
241
\alpha \mapsto K.
242
243
6.2-7 AddCokernelProjection
244
245
AddCokernelProjection( C, F )  operation
246
Returns: nothing
247
248
The arguments are a category C and a function F. This operations adds the
249
given function F to the category for the basic operation CokernelProjection.
250
F: \alpha \mapsto \epsilon.
251
252
6.2-8 AddCokernelProjectionWithGivenCokernelObject
253
254
AddCokernelProjectionWithGivenCokernelObject( C, F )  operation
255
Returns: nothing
256
257
The arguments are a category C and a function F. This operations adds the
258
given function F to the category for the basic operation CokernelProjection.
259
F: (\alpha, K) \mapsto \epsilon.
260
261
6.2-9 AddCokernelColift
262
263
AddCokernelColift( C, F )  operation
264
Returns: nothing
265
266
The arguments are a category C and a function F. This operations adds the
267
given function F to the category for the basic operation CokernelProjection.
268
F: (\alpha, \tau) \mapsto u(\tau).
269
270
6.2-10 AddCokernelColiftWithGivenCokernelObject
271
272
AddCokernelColiftWithGivenCokernelObject( C, F )  operation
273
Returns: nothing
274
275
The arguments are a category C and a function F. This operations adds the
276
given function F to the category for the basic operation CokernelProjection.
277
F: (\alpha, \tau, K) \mapsto u(\tau).
278
279
6.2-11 CokernelObjectFunctorial
280
281
CokernelObjectFunctorial( L )  operation
282
Returns: a morphism in \mathrm{Hom}(\mathrm{CokernelObject}( \alpha ),
283
\mathrm{CokernelObject}( \alpha' ))
284
285
The argument is a list L = [ \alpha: A \rightarrow B, [ \mu:A \rightarrow
286
A', \nu: B \rightarrow B' ], \alpha': A' \rightarrow B' ]. The output is the
287
morphism \mathrm{CokernelObject}( \alpha ) \rightarrow
288
\mathrm{CokernelObject}( \alpha' ) given by the functorality of the
289
cokernel.
290
291
6.2-12 CokernelObjectFunctorial
292
293
CokernelObjectFunctorial( alpha, nu, alpha_prime )  operation
294
Returns: a morphism in \mathrm{Hom}(\mathrm{CokernelObject}( \alpha ),
295
\mathrm{CokernelObject}( \alpha' ))
296
297
The arguments are three morphisms \alpha: A \rightarrow B, \nu: B
298
\rightarrow B', \alpha': A' \rightarrow B'. The output is the morphism
299
\mathrm{CokernelObject}( \alpha ) \rightarrow \mathrm{CokernelObject}(
300
\alpha' ) given by the functorality of the cokernel.
301
302
6.2-13 CokernelObjectFunctorialWithGivenCokernelObjects
303
304
CokernelObjectFunctorialWithGivenCokernelObjects( s, alpha, nu, alpha_prime, r )  operation
305
Returns: a morphism in \mathrm{Hom}(s, r)
306
307
The arguments are an object s = \mathrm{CokernelObject}( \alpha ), three
308
morphisms \alpha: A \rightarrow B, \nu: B \rightarrow B', \alpha': A'
309
\rightarrow B', and an object r = \mathrm{CokernelObject}( \alpha' ). The
310
output is the morphism \mathrm{CokernelObject}( \alpha ) \rightarrow
311
\mathrm{CokernelObject}( \alpha' ) given by the functorality of the
312
cokernel.
313
314
6.2-14 AddCokernelObjectFunctorialWithGivenCokernelObjects
315
316
AddCokernelObjectFunctorialWithGivenCokernelObjects( C, F )  operation
317
Returns: nothing
318
319
The arguments are a category C and a function F. This operations adds the
320
given function F to the category for the basic operation
321
CokernelObjectFunctorialWithGivenCokernelObjects. F:
322
(\mathrm{CokernelObject}( \alpha ), \alpha, \nu, \alpha',
323
\mathrm{CokernelObject}( \alpha' )) \mapsto (\mathrm{CokernelObject}( \alpha
324
) \rightarrow \mathrm{CokernelObject}( \alpha' )).
325
326
327
6.3 Zero Object
328
329
A zero object consists of three parts:
330
331
 an object Z,
332
333
 a function u_{\mathrm{in}} mapping each object A to a morphism
334
u_{\mathrm{in}}(A): A \rightarrow Z,
335
336
 a function u_{\mathrm{out}} mapping each object A to a morphism
337
u_{\mathrm{out}}(A): Z \rightarrow A.
338
339
The triple (Z, u_{\mathrm{in}}, u_{\mathrm{out}}) is called a zero object if
340
the morphisms u_{\mathrm{in}}(A), u_{\mathrm{out}}(A) are uniquely
341
determined up to congruence of morphisms. We denote the object Z of such a
342
triple by \mathrm{ZeroObject}. We say that the morphisms u_{\mathrm{in}}(A)
343
and u_{\mathrm{out}}(A) are induced by the universal property of the zero
344
object.
345
346
6.3-1 ZeroObject
347
348
ZeroObject( C )  attribute
349
Returns: an object
350
351
The argument is a category C. The output is a zero object Z of C.
352
353
6.3-2 ZeroObject
354
355
ZeroObject( c )  attribute
356
Returns: an object
357
358
This is a convenience method. The argument is a cell c. The output is a zero
359
object Z of the category C for which c \in C.
360
361
6.3-3 MorphismFromZeroObject
362
363
MorphismFromZeroObject( A )  attribute
364
Returns: a morphism in \mathrm{Hom}(\mathrm{ZeroObject}, A)
365
366
This is a convenience method. The argument is an object A. It calls
367
\mathrm{UniversalMorphismFromZeroObject} on A.
368
369
6.3-4 MorphismIntoZeroObject
370
371
MorphismIntoZeroObject( A )  attribute
372
Returns: a morphism in \mathrm{Hom}(A, \mathrm{ZeroObject})
373
374
This is a convenience method. The argument is an object A. It calls
375
\mathrm{UniversalMorphismIntoZeroObject} on A.
376
377
6.3-5 UniversalMorphismFromZeroObject
378
379
UniversalMorphismFromZeroObject( A )  attribute
380
Returns: a morphism in \mathrm{Hom}(\mathrm{ZeroObject}, A)
381
382
The argument is an object A. The output is the universal morphism
383
u_{\mathrm{out}}: \mathrm{ZeroObject} \rightarrow A.
384
385
6.3-6 UniversalMorphismFromZeroObjectWithGivenZeroObject
386
387
UniversalMorphismFromZeroObjectWithGivenZeroObject( A, Z )  operation
388
Returns: a morphism in \mathrm{Hom}(Z, A)
389
390
The arguments are an object A, and a zero object Z = \mathrm{ZeroObject}.
391
The output is the universal morphism u_{\mathrm{out}}: Z \rightarrow A.
392
393
6.3-7 UniversalMorphismIntoZeroObject
394
395
UniversalMorphismIntoZeroObject( A )  attribute
396
Returns: a morphism in \mathrm{Hom}(A, \mathrm{ZeroObject})
397
398
The argument is an object A. The output is the universal morphism
399
u_{\mathrm{in}}: A \rightarrow \mathrm{ZeroObject}.
400
401
6.3-8 UniversalMorphismIntoZeroObjectWithGivenZeroObject
402
403
UniversalMorphismIntoZeroObjectWithGivenZeroObject( A, Z )  operation
404
Returns: a morphism in \mathrm{Hom}(A, Z)
405
406
The arguments are an object A, and a zero object Z = \mathrm{ZeroObject}.
407
The output is the universal morphism u_{\mathrm{in}}: A \rightarrow Z.
408
409
6.3-9 IsomorphismFromZeroObjectToInitialObject
410
411
IsomorphismFromZeroObjectToInitialObject( C )  attribute
412
Returns: a morphism in \mathrm{Hom}(\mathrm{ZeroObject},
413
\mathrm{InitialObject})
414
415
The argument is a category C. The output is the unique isomorphism
416
\mathrm{ZeroObject} \rightarrow \mathrm{InitialObject}.
417
418
6.3-10 IsomorphismFromInitialObjectToZeroObject
419
420
IsomorphismFromInitialObjectToZeroObject( C )  attribute
421
Returns: a morphism in \mathrm{Hom}(\mathrm{InitialObject},
422
\mathrm{ZeroObject})
423
424
The argument is a category C. The output is the unique isomorphism
425
\mathrm{InitialObject} \rightarrow \mathrm{ZeroObject}.
426
427
6.3-11 IsomorphismFromZeroObjectToTerminalObject
428
429
IsomorphismFromZeroObjectToTerminalObject( C )  attribute
430
Returns: a morphism in \mathrm{Hom}(\mathrm{ZeroObject},
431
\mathrm{TerminalObject})
432
433
The argument is a category C. The output is the unique isomorphism
434
\mathrm{ZeroObject} \rightarrow \mathrm{TerminalObject}.
435
436
6.3-12 IsomorphismFromTerminalObjectToZeroObject
437
438
IsomorphismFromTerminalObjectToZeroObject( C )  attribute
439
Returns: a morphism in \mathrm{Hom}(\mathrm{TerminalObject},
440
\mathrm{ZeroObject})
441
442
The argument is a category C. The output is the unique isomorphism
443
\mathrm{TerminalObject} \rightarrow \mathrm{ZeroObject}.
444
445
6.3-13 AddZeroObject
446
447
AddZeroObject( C, F )  operation
448
Returns: nothing
449
450
The arguments are a category C and a function F. This operations adds the
451
given function F to the category for the basic operation ZeroObject. F: ()
452
\mapsto \mathrm{ZeroObject}.
453
454
6.3-14 AddUniversalMorphismIntoZeroObject
455
456
AddUniversalMorphismIntoZeroObject( C, F )  operation
457
Returns: nothing
458
459
The arguments are a category C and a function F. This operations adds the
460
given function F to the category for the basic operation
461
UniversalMorphismIntoZeroObject. F: A \mapsto u_{\mathrm{in}}(A).
462
463
6.3-15 AddUniversalMorphismIntoZeroObjectWithGivenZeroObject
464
465
AddUniversalMorphismIntoZeroObjectWithGivenZeroObject( C, F )  operation
466
Returns: nothing
467
468
The arguments are a category C and a function F. This operations adds the
469
given function F to the category for the basic operation
470
UniversalMorphismIntoZeroObjectWithGivenZeroObject. F: (A, Z) \mapsto
471
u_{\mathrm{in}}(A).
472
473
6.3-16 AddUniversalMorphismFromZeroObject
474
475
AddUniversalMorphismFromZeroObject( C, F )  operation
476
Returns: nothing
477
478
The arguments are a category C and a function F. This operations adds the
479
given function F to the category for the basic operation
480
UniversalMorphismFromZeroObject. F: A \mapsto u_{\mathrm{out}}(A).
481
482
6.3-17 AddUniversalMorphismFromZeroObjectWithGivenZeroObject
483
484
AddUniversalMorphismFromZeroObjectWithGivenZeroObject( C, F )  operation
485
Returns: nothing
486
487
The arguments are a category C and a function F. This operations adds the
488
given function F to the category for the basic operation
489
UniversalMorphismFromZeroObjectWithGivenZeroObject. F: (A,Z) \mapsto
490
u_{\mathrm{out}}(A).
491
492
6.3-18 AddIsomorphismFromZeroObjectToInitialObject
493
494
AddIsomorphismFromZeroObjectToInitialObject( C, F )  operation
495
Returns: nothing
496
497
The arguments are a category C and a function F. This operations adds the
498
given function F to the category for the basic operation
499
IsomorphismFromZeroObjectToInitialObject. F: () \mapsto (\mathrm{ZeroObject}
500
\rightarrow \mathrm{InitialObject}).
501
502
6.3-19 AddIsomorphismFromInitialObjectToZeroObject
503
504
AddIsomorphismFromInitialObjectToZeroObject( C, F )  operation
505
Returns: nothing
506
507
The arguments are a category C and a function F. This operations adds the
508
given function F to the category for the basic operation
509
IsomorphismFromInitialObjectToZeroObject. F: () \mapsto (
510
\mathrm{InitialObject} \rightarrow \mathrm{ZeroObject}).
511
512
6.3-20 AddIsomorphismFromZeroObjectToTerminalObject
513
514
AddIsomorphismFromZeroObjectToTerminalObject( C, F )  operation
515
Returns: nothing
516
517
The arguments are a category C and a function F. This operations adds the
518
given function F to the category for the basic operation
519
IsomorphismFromZeroObjectToTerminalObject. F: () \mapsto
520
(\mathrm{ZeroObject} \rightarrow \mathrm{TerminalObject}).
521
522
6.3-21 AddIsomorphismFromTerminalObjectToZeroObject
523
524
AddIsomorphismFromTerminalObjectToZeroObject( C, F )  operation
525
Returns: nothing
526
527
The arguments are a category C and a function F. This operations adds the
528
given function F to the category for the basic operation
529
IsomorphismFromTerminalObjectToZeroObject. F: () \mapsto (
530
\mathrm{TerminalObject} \rightarrow \mathrm{ZeroObject}).
531
532
6.3-22 ZeroObjectFunctorial
533
534
ZeroObjectFunctorial( C )  attribute
535
Returns: a morphism in \mathrm{Hom}(\mathrm{ZeroObject},
536
\mathrm{ZeroObject} )
537
538
The argument is a category C. The output is the unique morphism
539
\mathrm{ZeroObject} \rightarrow \mathrm{ZeroObject}.
540
541
6.3-23 AddZeroObjectFunctorial
542
543
AddZeroObjectFunctorial( C, F )  operation
544
Returns: nothing
545
546
The arguments are a category C and a function F. This operations adds the
547
given function F to the category for the basic operation
548
ZeroObjectFunctorial. F: () \mapsto (T \rightarrow T).
549
550
551
6.4 Terminal Object
552
553
A terminal object consists of two parts:
554
555
 an object T,
556
557
 a function u mapping each object A to a morphism u( A ): A \rightarrow
558
T.
559
560
The pair ( T, u ) is called a terminal object if the morphisms u( A ) are
561
uniquely determined up to congruence of morphisms. We denote the object T of
562
such a pair by \mathrm{TerminalObject}. We say that the morphism u( A ) is
563
induced by the universal property of the terminal object. \\ 
564
\mathrm{TerminalObject} is a functorial operation. This just means: There
565
exists a unique morphism T \rightarrow T.
566
567
6.4-1 TerminalObject
568
569
TerminalObject( C )  attribute
570
Returns: an object
571
572
The argument is a category C. The output is a terminal object T of C.
573
574
6.4-2 TerminalObject
575
576
TerminalObject( c )  attribute
577
Returns: an object
578
579
This is a convenience method. The argument is a cell c. The output is a
580
terminal object T of the category C for which c \in C.
581
582
6.4-3 UniversalMorphismIntoTerminalObject
583
584
UniversalMorphismIntoTerminalObject( A )  attribute
585
Returns: a morphism in \mathrm{Hom}( A, \mathrm{TerminalObject} )
586
587
The argument is an object A. The output is the universal morphism u(A): A
588
\rightarrow \mathrm{TerminalObject}.
589
590
6.4-4 UniversalMorphismIntoTerminalObjectWithGivenTerminalObject
591
592
UniversalMorphismIntoTerminalObjectWithGivenTerminalObject( A, T )  operation
593
Returns: a morphism in \mathrm{Hom}( A, T )
594
595
The argument are an object A, and an object T = \mathrm{TerminalObject}. The
596
output is the universal morphism u(A): A \rightarrow T.
597
598
6.4-5 AddTerminalObject
599
600
AddTerminalObject( C, F )  operation
601
Returns: nothing
602
603
The arguments are a category C and a function F. This operations adds the
604
given function F to the category for the basic operation TerminalObject. F:
605
() \mapsto T.
606
607
6.4-6 AddUniversalMorphismIntoTerminalObject
608
609
AddUniversalMorphismIntoTerminalObject( C, F )  operation
610
Returns: nothing
611
612
The arguments are a category C and a function F. This operations adds the
613
given function F to the category for the basic operation
614
UniversalMorphismIntoTerminalObject. F: A \mapsto u(A).
615
616
6.4-7 AddUniversalMorphismIntoTerminalObjectWithGivenTerminalObject
617
618
AddUniversalMorphismIntoTerminalObjectWithGivenTerminalObject( C, F )  operation
619
Returns: nothing
620
621
The arguments are a category C and a function F. This operations adds the
622
given function F to the category for the basic operation
623
UniversalMorphismIntoTerminalObjectWithGivenTerminalObject. F: (A,T) \mapsto
624
u(A).
625
626
6.4-8 TerminalObjectFunctorial
627
628
TerminalObjectFunctorial( C )  attribute
629
Returns: a morphism in \mathrm{Hom}(\mathrm{TerminalObject},
630
\mathrm{TerminalObject} )
631
632
The argument is a category C. The output is the unique morphism
633
\mathrm{TerminalObject} \rightarrow \mathrm{TerminalObject}.
634
635
6.4-9 AddTerminalObjectFunctorial
636
637
AddTerminalObjectFunctorial( C, F )  operation
638
Returns: nothing
639
640
The arguments are a category C and a function F. This operations adds the
641
given function F to the category for the basic operation
642
TerminalObjectFunctorial. F: () \mapsto (T \rightarrow T).
643
644
645
6.5 Initial Object
646
647
An initial object consists of two parts:
648
649
 an object I,
650
651
 a function u mapping each object A to a morphism u( A ): I \rightarrow
652
A.
653
654
The pair (I,u) is called a initial object if the morphisms u(A) are uniquely
655
determined up to congruence of morphisms. We denote the object I of such a
656
triple by \mathrm{InitialObject}. We say that the morphism u( A ) is induced
657
by the universal property of the initial object. \\  \mathrm{InitialObject}
658
is a functorial operation. This just means: There exists a unique morphisms
659
I \rightarrow I.
660
661
6.5-1 InitialObject
662
663
InitialObject( C )  attribute
664
Returns: an object
665
666
The argument is a category C. The output is an initial object I of C.
667
668
6.5-2 InitialObject
669
670
InitialObject( c )  attribute
671
Returns: an object
672
673
This is a convenience method. The argument is a cell c. The output is an
674
initial object I of the category C for which c \in C.
675
676
6.5-3 UniversalMorphismFromInitialObject
677
678
UniversalMorphismFromInitialObject( A )  attribute
679
Returns: a morphism in \mathrm{Hom}(\mathrm{InitialObject} \rightarrow A).
680
681
The argument is an object A. The output is the universal morphism u(A):
682
\mathrm{InitialObject} \rightarrow A.
683
684
6.5-4 UniversalMorphismFromInitialObjectWithGivenInitialObject
685
686
UniversalMorphismFromInitialObjectWithGivenInitialObject( A, I )  operation
687
Returns: a morphism in \mathrm{Hom}(\mathrm{InitialObject} \rightarrow A).
688
689
The arguments are an object A, and an object I = \mathrm{InitialObject}. The
690
output is the universal morphism u(A): \mathrm{InitialObject} \rightarrow A.
691
692
6.5-5 AddInitialObject
693
694
AddInitialObject( C, F )  operation
695
Returns: nothing
696
697
The arguments are a category C and a function F. This operations adds the
698
given function F to the category for the basic operation InitialObject. F:
699
() \mapsto I.
700
701
6.5-6 AddUniversalMorphismFromInitialObject
702
703
AddUniversalMorphismFromInitialObject( C, F )  operation
704
Returns: nothing
705
706
The arguments are a category C and a function F. This operations adds the
707
given function F to the category for the basic operation
708
UniversalMorphismFromInitialObject. F: A \mapsto u(A).
709
710
6.5-7 AddUniversalMorphismFromInitialObjectWithGivenInitialObject
711
712
AddUniversalMorphismFromInitialObjectWithGivenInitialObject( C, F )  operation
713
Returns: nothing
714
715
The arguments are a category C and a function F. This operations adds the
716
given function F to the category for the basic operation
717
UniversalMorphismFromInitialObjectWithGivenInitialObject. F: (A,I) \mapsto
718
u(A).
719
720
6.5-8 InitialObjectFunctorial
721
722
InitialObjectFunctorial( C )  attribute
723
Returns: a morphism in \mathrm{Hom}( \mathrm{InitialObject},
724
\mathrm{InitialObject} )
725
726
The argument is a category C. The output is the unique morphism
727
\mathrm{InitialObject} \rightarrow \mathrm{InitialObject}.
728
729
6.5-9 AddInitialObjectFunctorial
730
731
AddInitialObjectFunctorial( C, F )  operation
732
Returns: nothing
733
734
The arguments are a category C and a function F. This operations adds the
735
given function F to the category for the basic operation
736
InitialObjectFunctorial. F: () \rightarrow ( I \rightarrow I ).
737
738
739
6.6 Direct Sum
740
741
For a given list D = (S_1, \dots, S_n) in an Ab-category, a direct sum
742
consists of five parts:
743
744
 an object S,
745
746
 a list of morphisms \pi = (\pi_i: S \rightarrow S_i)_{i = 1 \dots n},
747
748
 a list of morphisms \iota = (\iota_i: S_i \rightarrow S)_{i = 1 \dots
749
n},
750
751
 a dependent function u_{\mathrm{in}} mapping every list \tau = (
752
\tau_i: T \rightarrow S_i )_{i = 1 \dots n} to a morphism
753
u_{\mathrm{in}}(\tau): T \rightarrow S such that \pi_i \circ
754
u_{\mathrm{in}}(\tau) \sim_{T,S_i} \tau_i for all i = 1, \dots, n.
755
756
 a dependent function u_{\mathrm{out}} mapping every list \tau = (
757
\tau_i: S_i \rightarrow T )_{i = 1 \dots n} to a morphism
758
u_{\mathrm{out}}(\tau): S \rightarrow T such that
759
u_{\mathrm{out}}(\tau) \circ \iota_i \sim_{S_i, T} \tau_i for all i =
760
1, \dots, n,
761
762
such that
763
764
 \sum_{i=1}^{n} \iota_i \circ \pi_i = \mathrm{id}_S,
765
766
 \pi_j \circ \iota_i = \delta_{i,j},
767
768
where \delta_{i,j} \in \mathrm{Hom}( S_i, S_j ) is the identity if i=j, and
769
0 otherwise. The 5-tuple (S, \pi, \iota, u_{\mathrm{in}}, u_{\mathrm{out}})
770
is called a direct sum of D. We denote the object S of such a 5-tuple by
771
\bigoplus_{i=1}^n S_i. We say that the morphisms u_{\mathrm{in}}(\tau),
772
u_{\mathrm{out}}(\tau) are induced by the universal property of the direct
773
sum. \\  \mathrm{DirectSum} is a functorial operation. This means: For
774
(\mu_i: S_i \rightarrow S'_i)_{i=1\dots n}, we obtain a morphism
775
\bigoplus_{i=1}^n S_i \rightarrow \bigoplus_{i=1}^n S_i'.
776
777
6.6-1 DirectSumOp
778
779
DirectSumOp( D, method_selection_object )  operation
780
Returns: an object
781
782
The argument is a list of objects D = (S_1, \dots, S_n) and an object for
783
method selection. The output is the direct sum \bigoplus_{i=1}^n S_i.
784
785
6.6-2 ProjectionInFactorOfDirectSum
786
787
ProjectionInFactorOfDirectSum( D, k )  operation
788
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i, S_k )
789
790
The arguments are a list of objects D = (S_1, \dots, S_n) and an integer k.
791
The output is the k-th projection \pi_k: \bigoplus_{i=1}^n S_i \rightarrow
792
S_k.
793
794
6.6-3 ProjectionInFactorOfDirectSumOp
795
796
ProjectionInFactorOfDirectSumOp( D, k, method_selection_object )  operation
797
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i, S_k )
798
799
The arguments are a list of objects D = (S_1, \dots, S_n), an integer k, and
800
an object for method selection. The output is the k-th projection \pi_k:
801
\bigoplus_{i=1}^n S_i \rightarrow S_k.
802
803
6.6-4 ProjectionInFactorOfDirectSumWithGivenDirectSum
804
805
ProjectionInFactorOfDirectSumWithGivenDirectSum( D, k, S )  operation
806
Returns: a morphism in \mathrm{Hom}( S, S_k )
807
808
The arguments are a list of objects D = (S_1, \dots, S_n), an integer k, and
809
an object S = \bigoplus_{i=1}^n S_i. The output is the k-th projection
810
\pi_k: S \rightarrow S_k.
811
812
6.6-5 InjectionOfCofactorOfDirectSum
813
814
InjectionOfCofactorOfDirectSum( D, k )  operation
815
Returns: a morphism in \mathrm{Hom}( S_k, \bigoplus_{i=1}^n S_i )
816
817
The arguments are a list of objects D = (S_1, \dots, S_n) and an integer k.
818
The output is the k-th injection \iota_k: S_k \rightarrow \bigoplus_{i=1}^n
819
S_i.
820
821
6.6-6 InjectionOfCofactorOfDirectSumOp
822
823
InjectionOfCofactorOfDirectSumOp( D, k, method_selection_object )  operation
824
Returns: a morphism in \mathrm{Hom}( S_k, \bigoplus_{i=1}^n S_i )
825
826
The arguments are a list of objects D = (S_1, \dots, S_n), an integer k, and
827
an object for method selection. The output is the k-th injection \iota_k:
828
S_k \rightarrow \bigoplus_{i=1}^n S_i.
829
830
6.6-7 InjectionOfCofactorOfDirectSumWithGivenDirectSum
831
832
InjectionOfCofactorOfDirectSumWithGivenDirectSum( D, k, S )  operation
833
Returns: a morphism in \mathrm{Hom}( S_k, S )
834
835
The arguments are a list of objects D = (S_1, \dots, S_n), an integer k, and
836
an object S = \bigoplus_{i=1}^n S_i. The output is the k-th injection
837
\iota_k: S_k \rightarrow S.
838
839
6.6-8 UniversalMorphismIntoDirectSum
840
841
UniversalMorphismIntoDirectSum( arg )  function
842
Returns: a morphism in \mathrm{Hom}(T, \bigoplus_{i=1}^n S_i)
843
844
This is a convenience method. There are three different ways to use this
845
method:
846
847
 The arguments are a list of objects D = (S_1, \dots, S_n) and a list
848
of morphisms \tau = ( \tau_i: T \rightarrow S_i )_{i = 1 \dots n}.
849
850
 The argument is a list of morphisms \tau = ( \tau_i: T \rightarrow S_i
851
)_{i = 1 \dots n}.
852
853
 The arguments are morphisms \tau_1: T \rightarrow S_1, \dots, \tau_n:
854
T \rightarrow S_n.
855
856
The output is the morphism u_{\mathrm{in}}(\tau): T \rightarrow
857
\bigoplus_{i=1}^n S_i given by the universal property of the direct sum.
858
859
6.6-9 UniversalMorphismIntoDirectSumOp
860
861
UniversalMorphismIntoDirectSumOp( D, tau, method_selection_object )  operation
862
Returns: a morphism in \mathrm{Hom}(T, \bigoplus_{i=1}^n S_i)
863
864
The arguments are a list of objects D = (S_1, \dots, S_n), a list of
865
morphisms \tau = ( \tau_i: T \rightarrow S_i )_{i = 1 \dots n}, and an
866
object for method selection. The output is the morphism
867
u_{\mathrm{in}}(\tau): T \rightarrow \bigoplus_{i=1}^n S_i given by the
868
universal property of the direct sum.
869
870
6.6-10 UniversalMorphismIntoDirectSumWithGivenDirectSum
871
872
UniversalMorphismIntoDirectSumWithGivenDirectSum( D, tau, S )  operation
873
Returns: a morphism in \mathrm{Hom}(T, S)
874
875
The arguments are a list of objects D = (S_1, \dots, S_n), a list of
876
morphisms \tau = ( \tau_i: T \rightarrow S_i )_{i = 1 \dots n}, and an
877
object S = \bigoplus_{i=1}^n S_i. The output is the morphism
878
u_{\mathrm{in}}(\tau): T \rightarrow S given by the universal property of
879
the direct sum.
880
881
6.6-11 UniversalMorphismFromDirectSum
882
883
UniversalMorphismFromDirectSum( arg )  function
884
Returns: a morphism in \mathrm{Hom}(\bigoplus_{i=1}^n S_i, T)
885
886
This is a convenience method. There are three different ways to use this
887
method:
888
889
 The arguments are a list of objects D = (S_1, \dots, S_n) and a list
890
of morphisms \tau = ( \tau_i: S_i \rightarrow T )_{i = 1 \dots n}.
891
892
 The argument is a list of morphisms \tau = ( \tau_i: S_i \rightarrow T
893
)_{i = 1 \dots n}.
894
895
 The arguments are morphisms S_1 \rightarrow T, \dots, S_n \rightarrow
896
T.
897
898
The output is the morphism u_{\mathrm{out}}(\tau): \bigoplus_{i=1}^n S_i
899
\rightarrow T given by the universal property of the direct sum.
900
901
6.6-12 UniversalMorphismFromDirectSumOp
902
903
UniversalMorphismFromDirectSumOp( D, tau, method_selection_object )  operation
904
Returns: a morphism in \mathrm{Hom}(\bigoplus_{i=1}^n S_i, T)
905
906
The arguments are a list of objects D = (S_1, \dots, S_n), a list of
907
morphisms \tau = ( \tau_i: S_i \rightarrow T )_{i = 1 \dots n}, and an
908
object for method selection. The output is the morphism
909
u_{\mathrm{out}}(\tau): \bigoplus_{i=1}^n S_i \rightarrow T given by the
910
universal property of the direct sum.
911
912
6.6-13 UniversalMorphismFromDirectSumWithGivenDirectSum
913
914
UniversalMorphismFromDirectSumWithGivenDirectSum( D, tau, S )  operation
915
Returns: a morphism in \mathrm{Hom}(S, T)
916
917
The arguments are a list of objects D = (S_1, \dots, S_n), a list of
918
morphisms \tau = ( \tau_i: S_i \rightarrow T )_{i = 1 \dots n}, and an
919
object S = \bigoplus_{i=1}^n S_i. The output is the morphism
920
u_{\mathrm{out}}(\tau): S \rightarrow T given by the universal property of
921
the direct sum.
922
923
6.6-14 IsomorphismFromDirectSumToDirectProduct
924
925
IsomorphismFromDirectSumToDirectProduct( D )  operation
926
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i,
927
\prod_{i=1}^{n}S_i )
928
929
The argument is a list of objects D = (S_1, \dots, S_n). The output is the
930
canonical isomorphism \bigoplus_{i=1}^n S_i \rightarrow \prod_{i=1}^{n}S_i.
931
932
6.6-15 IsomorphismFromDirectSumToDirectProductOp
933
934
IsomorphismFromDirectSumToDirectProductOp( D, method_selection_object )  operation
935
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i,
936
\prod_{i=1}^{n}S_i )
937
938
The arguments are a list of objects D = (S_1, \dots, S_n) and an object for
939
method selection. The output is the canonical isomorphism \bigoplus_{i=1}^n
940
S_i \rightarrow \prod_{i=1}^{n}S_i.
941
942
6.6-16 IsomorphismFromDirectProductToDirectSum
943
944
IsomorphismFromDirectProductToDirectSum( D )  operation
945
Returns: a morphism in \mathrm{Hom}( \prod_{i=1}^{n}S_i, \bigoplus_{i=1}^n
946
S_i )
947
948
The argument is a list of objects D = (S_1, \dots, S_n). The output is the
949
canonical isomorphism \prod_{i=1}^{n}S_i \rightarrow \bigoplus_{i=1}^n S_i.
950
951
6.6-17 IsomorphismFromDirectProductToDirectSumOp
952
953
IsomorphismFromDirectProductToDirectSumOp( D, method_selection_object )  operation
954
Returns: a morphism in \mathrm{Hom}( \prod_{i=1}^{n}S_i, \bigoplus_{i=1}^n
955
S_i )
956
957
The argument is a list of objects D = (S_1, \dots, S_n) and an object for
958
method selection. The output is the canonical isomorphism \prod_{i=1}^{n}S_i
959
\rightarrow \bigoplus_{i=1}^n S_i.
960
961
6.6-18 IsomorphismFromDirectSumToCoproduct
962
963
IsomorphismFromDirectSumToCoproduct( D )  operation
964
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i,
965
\bigsqcup_{i=1}^{n}S_i )
966
967
The argument is a list of objects D = (S_1, \dots, S_n). The output is the
968
canonical isomorphism \bigoplus_{i=1}^n S_i \rightarrow
969
\bigsqcup_{i=1}^{n}S_i.
970
971
6.6-19 IsomorphismFromDirectSumToCoproductOp
972
973
IsomorphismFromDirectSumToCoproductOp( D, method_selection_object )  operation
974
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i,
975
\bigsqcup_{i=1}^{n}S_i )
976
977
The argument is a list of objects D = (S_1, \dots, S_n) and an object for
978
method selection. The output is the canonical isomorphism \bigoplus_{i=1}^n
979
S_i \rightarrow \bigsqcup_{i=1}^{n}S_i.
980
981
6.6-20 IsomorphismFromCoproductToDirectSum
982
983
IsomorphismFromCoproductToDirectSum( D )  operation
984
Returns: a morphism in \mathrm{Hom}( \bigsqcup_{i=1}^{n}S_i,
985
\bigoplus_{i=1}^n S_i )
986
987
The argument is a list of objects D = (S_1, \dots, S_n). The output is the
988
canonical isomorphism \bigsqcup_{i=1}^{n}S_i \rightarrow \bigoplus_{i=1}^n
989
S_i.
990
991
6.6-21 IsomorphismFromCoproductToDirectSumOp
992
993
IsomorphismFromCoproductToDirectSumOp( D, method_selection_object )  operation
994
Returns: a morphism in \mathrm{Hom}( \bigsqcup_{i=1}^{n}S_i,
995
\bigoplus_{i=1}^n S_i )
996
997
The argument is a list of objects D = (S_1, \dots, S_n) and an object for
998
method selection. The output is the canonical isomorphism
999
\bigsqcup_{i=1}^{n}S_i \rightarrow \bigoplus_{i=1}^n S_i.
1000
1001
6.6-22 MorphismBetweenDirectSums
1002
1003
MorphismBetweenDirectSums( M )  operation
1004
MorphismBetweenDirectSums( S, M, T )  operation
1005
Returns: a morphism in \mathrm{Hom}(\bigoplus_{i=1}^{m}A_i,
1006
\bigoplus_{j=1}^n B_j)
1007
1008
The argument M = ( ( \phi_{i,j}: A_i \rightarrow B_j )_{j = 1 \dots n} )_{i
1009
= 1 \dots m} is a list of lists of morphisms. The output is the morphism
1010
\bigoplus_{i=1}^{m}A_i \rightarrow \bigoplus_{j=1}^n B_j defined by the
1011
matrix M. The extra arguments S = \bigoplus_{i=1}^{m}A_i and T =
1012
\bigoplus_{j=1}^n B_j are source and target of the output, respectively.
1013
They must be provided in case M is an empty list or a list of empty lists.
1014
1015
6.6-23 MorphismBetweenDirectSumsOp
1016
1017
MorphismBetweenDirectSumsOp( M, m, n, method_selection_morphism )  operation
1018
Returns: a morphism in \mathrm{Hom}(\bigoplus_{i=1}^{m}A_i,
1019
\bigoplus_{j=1}^n B_j)
1020
1021
The arguments are a list M = ( \phi_{1,1}, \phi_{1,2}, \dots, \phi_{1,n},
1022
\phi_{2,1}, \dots, \phi_{m,n} ) of morphisms \phi_{i,j}: A_i \rightarrow
1023
B_j, an integer m, an integer n, and a method selection morphism. The output
1024
is the morphism \bigoplus_{i=1}^{m}A_i \rightarrow \bigoplus_{j=1}^n B_j
1025
defined by the list M regarded as a matrix of dimension m \times n.
1026
1027
6.6-24 AddProjectionInFactorOfDirectSum
1028
1029
AddProjectionInFactorOfDirectSum( C, F )  operation
1030
Returns: nothing
1031
1032
The arguments are a category C and a function F. This operations adds the
1033
given function F to the category for the basic operation
1034
ProjectionInFactorOfDirectSum. F: (D,k) \mapsto \pi_{k}.
1035
1036
6.6-25 AddProjectionInFactorOfDirectSumWithGivenDirectSum
1037
1038
AddProjectionInFactorOfDirectSumWithGivenDirectSum( C, F )  operation
1039
Returns: nothing
1040
1041
The arguments are a category C and a function F. This operations adds the
1042
given function F to the category for the basic operation
1043
ProjectionInFactorOfDirectSumWithGivenDirectSum. F: (D,k,S) \mapsto \pi_{k}.
1044
1045
6.6-26 AddInjectionOfCofactorOfDirectSum
1046
1047
AddInjectionOfCofactorOfDirectSum( C, F )  operation
1048
Returns: nothing
1049
1050
The arguments are a category C and a function F. This operations adds the
1051
given function F to the category for the basic operation
1052
InjectionOfCofactorOfDirectSum. F: (D,k) \mapsto \iota_{k}.
1053
1054
6.6-27 AddInjectionOfCofactorOfDirectSumWithGivenDirectSum
1055
1056
AddInjectionOfCofactorOfDirectSumWithGivenDirectSum( C, F )  operation
1057
Returns: nothing
1058
1059
The arguments are a category C and a function F. This operations adds the
1060
given function F to the category for the basic operation
1061
InjectionOfCofactorOfDirectSumWithGivenDirectSum. F: (D,k,S) \mapsto
1062
\iota_{k}.
1063
1064
6.6-28 AddUniversalMorphismIntoDirectSum
1065
1066
AddUniversalMorphismIntoDirectSum( C, F )  operation
1067
Returns: nothing
1068
1069
The arguments are a category C and a function F. This operations adds the
1070
given function F to the category for the basic operation
1071
UniversalMorphismIntoDirectSum. F: (D,\tau) \mapsto u_{\mathrm{in}}(\tau).
1072
1073
6.6-29 AddUniversalMorphismIntoDirectSumWithGivenDirectSum
1074
1075
AddUniversalMorphismIntoDirectSumWithGivenDirectSum( C, F )  operation
1076
Returns: nothing
1077
1078
The arguments are a category C and a function F. This operations adds the
1079
given function F to the category for the basic operation
1080
UniversalMorphismIntoDirectSumWithGivenDirectSum. F: (D,\tau,S) \mapsto
1081
u_{\mathrm{in}}(\tau).
1082
1083
6.6-30 AddUniversalMorphismFromDirectSum
1084
1085
AddUniversalMorphismFromDirectSum( C, F )  operation
1086
Returns: nothing
1087
1088
The arguments are a category C and a function F. This operations adds the
1089
given function F to the category for the basic operation
1090
UniversalMorphismFromDirectSum. F: (D,\tau) \mapsto u_{\mathrm{out}}(\tau).
1091
1092
6.6-31 AddUniversalMorphismFromDirectSumWithGivenDirectSum
1093
1094
AddUniversalMorphismFromDirectSumWithGivenDirectSum( C, F )  operation
1095
Returns: nothing
1096
1097
The arguments are a category C and a function F. This operations adds the
1098
given function F to the category for the basic operation
1099
UniversalMorphismFromDirectSumWithGivenDirectSum. F: (D,\tau,S) \mapsto
1100
u_{\mathrm{out}}(\tau).
1101
1102
6.6-32 AddIsomorphismFromDirectSumToDirectProduct
1103
1104
AddIsomorphismFromDirectSumToDirectProduct( C, F )  operation
1105
Returns: nothing
1106
1107
The arguments are a category C and a function F. This operations adds the
1108
given function F to the category for the basic operation
1109
IsomorphismFromDirectSumToDirectProduct. F: D \mapsto (\bigoplus_{i=1}^n S_i
1110
\rightarrow \prod_{i=1}^{n}S_i).
1111
1112
6.6-33 AddIsomorphismFromDirectProductToDirectSum
1113
1114
AddIsomorphismFromDirectProductToDirectSum( C, F )  operation
1115
Returns: nothing
1116
1117
The arguments are a category C and a function F. This operations adds the
1118
given function F to the category for the basic operation
1119
IsomorphismFromDirectProductToDirectSum. F: D \mapsto ( \prod_{i=1}^{n}S_i
1120
\rightarrow \bigoplus_{i=1}^n S_i ).
1121
1122
6.6-34 AddIsomorphismFromDirectSumToCoproduct
1123
1124
AddIsomorphismFromDirectSumToCoproduct( C, F )  operation
1125
Returns: nothing
1126
1127
The arguments are a category C and a function F. This operations adds the
1128
given function F to the category for the basic operation
1129
IsomorphismFromDirectSumToCoproduct. F: D \mapsto ( \bigoplus_{i=1}^n S_i
1130
\rightarrow \bigsqcup_{i=1}^{n}S_i ).
1131
1132
6.6-35 AddIsomorphismFromCoproductToDirectSum
1133
1134
AddIsomorphismFromCoproductToDirectSum( C, F )  operation
1135
Returns: nothing
1136
1137
The arguments are a category C and a function F. This operations adds the
1138
given function F to the category for the basic operation
1139
IsomorphismFromCoproductToDirectSum. F: D \mapsto ( \bigsqcup_{i=1}^{n}S_i
1140
\rightarrow \bigoplus_{i=1}^n S_i ).
1141
1142
6.6-36 AddDirectSum
1143
1144
AddDirectSum( C, F )  operation
1145
Returns: nothing
1146
1147
The arguments are a category C and a function F. This operations adds the
1148
given function F to the category for the basic operation DirectSum. F: D
1149
\mapsto \bigoplus_{i=1}^n S_i.
1150
1151
6.6-37 DirectSumFunctorial
1152
1153
DirectSumFunctorial( L )  operation
1154
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n S_i,
1155
\bigoplus_{i=1}^n S_i' )
1156
1157
The argument is a list of morphisms L = ( \mu_1: S_1 \rightarrow S_1',
1158
\dots, \mu_n: S_n \rightarrow S_n' ). The output is a morphism
1159
\bigoplus_{i=1}^n S_i \rightarrow \bigoplus_{i=1}^n S_i' given by the
1160
functorality of the direct sum.
1161
1162
6.6-38 DirectSumFunctorialWithGivenDirectSums
1163
1164
DirectSumFunctorialWithGivenDirectSums( d_1, L, d_2 )  operation
1165
Returns: a morphism in \mathrm{Hom}( d_1, d_2 )
1166
1167
The arguments are an object d_1 = \bigoplus_{i=1}^n S_i, a list of morphisms
1168
L = ( \mu_1: S_1 \rightarrow S_1', \dots, \mu_n: S_n \rightarrow S_n' ), and
1169
an object d_2 = \bigoplus_{i=1}^n S_i'. The output is a morphism d_1
1170
\rightarrow d_2 given by the functorality of the direct sum.
1171
1172
6.6-39 AddDirectSumFunctorialWithGivenDirectSums
1173
1174
AddDirectSumFunctorialWithGivenDirectSums( C, F )  operation
1175
Returns: nothing
1176
1177
The arguments are a category C and a function F. This operations adds the
1178
given function F to the category for the basic operation
1179
DirectSumFunctorialWithGivenDirectSums. F: (\bigoplus_{i=1}^n S_i, ( \mu_1,
1180
\dots, \mu_n ), \bigoplus_{i=1}^n S_i') \mapsto (\bigoplus_{i=1}^n S_i
1181
\rightarrow \bigoplus_{i=1}^n S_i').
1182
1183
1184
6.7 Coproduct
1185
1186
For a given list of objects D = ( I_1, \dots, I_n ), a coproduct of D
1187
consists of three parts:
1188
1189
 an object I,
1190
1191
 a list of morphisms \iota = ( \iota_i: I_i \rightarrow I )_{i = 1
1192
\dots n}
1193
1194
 a dependent function u mapping each list of morphisms \tau = ( \tau_i:
1195
I_i \rightarrow T ) to a morphism u( \tau ): I \rightarrow T such that
1196
u( \tau ) \circ \iota_i \sim_{I_i, T} \tau_i for all i = 1, \dots, n.
1197
1198
The triple ( I, \iota, u ) is called a coproduct of D if the morphisms u(
1199
\tau ) are uniquely determined up to congruence of morphisms. We denote the
1200
object I of such a triple by \bigsqcup_{i=1}^n I_i. We say that the morphism
1201
u( \tau ) is induced by the universal property of the coproduct. \\ 
1202
\mathrm{Coproduct} is a functorial operation. This means: For (\mu_i: I_i
1203
\rightarrow I'_i)_{i=1\dots n}, we obtain a morphism \bigsqcup_{i=1}^n I_i
1204
\rightarrow \bigsqcup_{i=1}^n I_i'.
1205
1206
6.7-1 Coproduct
1207
1208
Coproduct( D )  attribute
1209
Returns: an object
1210
1211
The argument is a list of objects D = ( I_1, \dots, I_n ). The output is the
1212
coproduct \bigsqcup_{i=1}^n I_i.
1213
1214
6.7-2 Coproduct
1215
1216
Coproduct( I1, I2 )  operation
1217
Returns: an object
1218
1219
This is a convenience method. The arguments are two objects I_1, I_2. The
1220
output is the coproduct I_1 \bigsqcup I_2.
1221
1222
6.7-3 Coproduct
1223
1224
Coproduct( I1, I2 )  operation
1225
Returns: an object
1226
1227
This is a convenience method. The arguments are three objects I_1, I_2, I_3.
1228
The output is the coproduct I_1 \bigsqcup I_2 \bigsqcup I_3.
1229
1230
6.7-4 CoproductOp
1231
1232
CoproductOp( D, method_selection_object )  operation
1233
Returns: an object
1234
1235
The arguments are a list of objects D = ( I_1, \dots, I_n ) and a method
1236
selection object. The output is the coproduct \bigsqcup_{i=1}^n I_i.
1237
1238
6.7-5 InjectionOfCofactorOfCoproduct
1239
1240
InjectionOfCofactorOfCoproduct( D, k )  operation
1241
Returns: a morphism in \mathrm{Hom}(I_k, \bigsqcup_{i=1}^n I_i)
1242
1243
The arguments are a list of objects D = ( I_1, \dots, I_n ) and an integer
1244
k. The output is the k-th injection \iota_k: I_k \rightarrow
1245
\bigsqcup_{i=1}^n I_i.
1246
1247
6.7-6 InjectionOfCofactorOfCoproductOp
1248
1249
InjectionOfCofactorOfCoproductOp( D, k, method_selection_object )  operation
1250
Returns: a morphism in \mathrm{Hom}(I_k, \bigsqcup_{i=1}^n I_i)
1251
1252
The arguments are a list of objects D = ( I_1, \dots, I_n ), an integer k,
1253
and a method selection object. The output is the k-th injection \iota_k: I_k
1254
\rightarrow \bigsqcup_{i=1}^n I_i.
1255
1256
6.7-7 InjectionOfCofactorOfCoproductWithGivenCoproduct
1257
1258
InjectionOfCofactorOfCoproductWithGivenCoproduct( D, k, I )  operation
1259
Returns: a morphism in \mathrm{Hom}(I_k, I)
1260
1261
The arguments are a list of objects D = ( I_1, \dots, I_n ), an integer k,
1262
and an object I = \bigsqcup_{i=1}^n I_i. The output is the k-th injection
1263
\iota_k: I_k \rightarrow I.
1264
1265
6.7-8 UniversalMorphismFromCoproduct
1266
1267
UniversalMorphismFromCoproduct( arg )  function
1268
Returns: a morphism in \mathrm{Hom}(\bigsqcup_{i=1}^n I_i, T)
1269
1270
This is a convenience method. There are three different ways to use this
1271
method.
1272
1273
 The arguments are a list of objects D = ( I_1, \dots, I_n ), a list of
1274
morphisms \tau = ( \tau_i: I_i \rightarrow T ).
1275
1276
 The argument is a list of morphisms \tau = ( \tau_i: I_i \rightarrow T
1277
).
1278
1279
 The arguments are morphisms \tau_1: I_1 \rightarrow T, \dots, \tau_n:
1280
I_n \rightarrow T
1281
1282
The output is the morphism u( \tau ): \bigsqcup_{i=1}^n I_i \rightarrow T
1283
given by the universal property of the coproduct.
1284
1285
6.7-9 UniversalMorphismFromCoproductOp
1286
1287
UniversalMorphismFromCoproductOp( D, tau, method_selection_object )  operation
1288
Returns: a morphism in \mathrm{Hom}(\bigsqcup_{i=1}^n I_i, T)
1289
1290
The arguments are a list of objects D = ( I_1, \dots, I_n ), a list of
1291
morphisms \tau = ( \tau_i: I_i \rightarrow T ), and a method selection
1292
object. The output is the morphism u( \tau ): \bigsqcup_{i=1}^n I_i
1293
\rightarrow T given by the universal property of the coproduct.
1294
1295
6.7-10 UniversalMorphismFromCoproductWithGivenCoproduct
1296
1297
UniversalMorphismFromCoproductWithGivenCoproduct( D, tau, I )  operation
1298
Returns: a morphism in \mathrm{Hom}(I, T)
1299
1300
The arguments are a list of objects D = ( I_1, \dots, I_n ), a list of
1301
morphisms \tau = ( \tau_i: I_i \rightarrow T ), and an object I =
1302
\bigsqcup_{i=1}^n I_i. The output is the morphism u( \tau ): I \rightarrow T
1303
given by the universal property of the coproduct.
1304
1305
6.7-11 AddCoproduct
1306
1307
AddCoproduct( C, F )  operation
1308
Returns: nothing
1309
1310
The arguments are a category C and a function F. This operations adds the
1311
given function F to the category for the basic operation Coproduct. F: (
1312
(I_1, \dots, I_n) ) \mapsto I.
1313
1314
6.7-12 AddInjectionOfCofactorOfCoproduct
1315
1316
AddInjectionOfCofactorOfCoproduct( C, F )  operation
1317
Returns: nothing
1318
1319
The arguments are a category C and a function F. This operations adds the
1320
given function F to the category for the basic operation
1321
InjectionOfCofactorOfCoproduct. F: ( (I_1, \dots, I_n), i ) \mapsto \iota_i.
1322
1323
6.7-13 AddInjectionOfCofactorOfCoproductWithGivenCoproduct
1324
1325
AddInjectionOfCofactorOfCoproductWithGivenCoproduct( C, F )  operation
1326
Returns: nothing
1327
1328
The arguments are a category C and a function F. This operations adds the
1329
given function F to the category for the basic operation
1330
InjectionOfCofactorOfCoproductWithGivenCoproduct. F: ( (I_1, \dots, I_n), i,
1331
I ) \mapsto \iota_i.
1332
1333
6.7-14 AddUniversalMorphismFromCoproduct
1334
1335
AddUniversalMorphismFromCoproduct( C, F )  operation
1336
Returns: nothing
1337
1338
The arguments are a category C and a function F. This operations adds the
1339
given function F to the category for the basic operation
1340
UniversalMorphismFromCoproduct. F: ( (I_1, \dots, I_n), \tau ) \mapsto u(
1341
\tau ).
1342
1343
6.7-15 AddUniversalMorphismFromCoproductWithGivenCoproduct
1344
1345
AddUniversalMorphismFromCoproductWithGivenCoproduct( C, F )  operation
1346
Returns: nothing
1347
1348
The arguments are a category C and a function F. This operations adds the
1349
given function F to the category for the basic operation
1350
UniversalMorphismFromCoproductWithGivenCoproduct. F: ( (I_1, \dots, I_n),
1351
\tau, I ) \mapsto u( \tau ).
1352
1353
6.7-16 CoproductFunctorial
1354
1355
CoproductFunctorial( L )  operation
1356
Returns: a morphism in \mathrm{Hom}(\bigsqcup_{i=1}^n I_i,
1357
\bigsqcup_{i=1}^n I_i')
1358
1359
The argument is a list L = ( \mu_1: I_1 \rightarrow I_1', \dots, \mu_n: I_n
1360
\rightarrow I_n' ). The output is a morphism \bigsqcup_{i=1}^n I_i
1361
\rightarrow \bigsqcup_{i=1}^n I_i' given by the functorality of the
1362
coproduct.
1363
1364
6.7-17 CoproductFunctorialWithGivenCoproducts
1365
1366
CoproductFunctorialWithGivenCoproducts( s, L, r )  operation
1367
Returns: a morphism in \mathrm{Hom}(s, r)
1368
1369
The arguments are an object s = \bigsqcup_{i=1}^n I_i, a list L = ( \mu_1:
1370
I_1 \rightarrow I_1', \dots, \mu_n: I_n \rightarrow I_n' ), and an object r
1371
= \bigsqcup_{i=1}^n I_i'. The output is a morphism \bigsqcup_{i=1}^n I_i
1372
\rightarrow \bigsqcup_{i=1}^n I_i' given by the functorality of the
1373
coproduct.
1374
1375
6.7-18 AddCoproductFunctorialWithGivenCoproducts
1376
1377
AddCoproductFunctorialWithGivenCoproducts( C, F )  operation
1378
Returns: nothing
1379
1380
The arguments are a category C and a function F. This operations adds the
1381
given function F to the category for the basic operation
1382
CoproductFunctorialWithGivenCoproducts. F: (\bigsqcup_{i=1}^n I_i, (\mu_1,
1383
\dots, \mu_n), \bigsqcup_{i=1}^n I_i') \rightarrow (\bigsqcup_{i=1}^n I_i
1384
\rightarrow \bigsqcup_{i=1}^n I_i').
1385
1386
1387
6.8 Direct Product
1388
1389
For a given list of objects D = ( P_1, \dots, P_n ), a direct product of D
1390
consists of three parts:
1391
1392
 an object P,
1393
1394
 a list of morphisms \pi = ( \pi_i: P \rightarrow P_i )_{i = 1 \dots n}
1395
1396
 a dependent function u mapping each list of morphisms \tau = ( \tau_i:
1397
T \rightarrow P_i )_{i = 1, \dots, n} to a morphism u(\tau): T
1398
\rightarrow P such that \pi_i \circ u( \tau ) \sim_{T,P_i} \tau_i for
1399
all i = 1, \dots, n.
1400
1401
The triple ( P, \pi, u ) is called a direct product of D if the morphisms u(
1402
\tau ) are uniquely determined up to congruence of morphisms. We denote the
1403
object P of such a triple by \prod_{i=1}^n P_i. We say that the morphism u(
1404
\tau ) is induced by the universal property of the direct product. \\ 
1405
\mathrm{DirectProduct} is a functorial operation. This means: For (\mu_i:
1406
P_i \rightarrow P'_i)_{i=1\dots n}, we obtain a morphism \prod_{i=1}^n P_i
1407
\rightarrow \prod_{i=1}^n P_i'.
1408
1409
6.8-1 DirectProductOp
1410
1411
DirectProductOp( D )  operation
1412
Returns: an object
1413
1414
The arguments are a list of objects D = ( P_1, \dots, P_n ) and an object
1415
for method selection. The output is the direct product \prod_{i=1}^n P_i.
1416
1417
6.8-2 ProjectionInFactorOfDirectProduct
1418
1419
ProjectionInFactorOfDirectProduct( D, k )  operation
1420
Returns: a morphism in \mathrm{Hom}(\prod_{i=1}^n P_i, P_k)
1421
1422
The arguments are a list of objects D = ( P_1, \dots, P_n ) and an integer
1423
k. The output is the k-th projection \pi_k: \prod_{i=1}^n P_i \rightarrow
1424
P_k.
1425
1426
6.8-3 ProjectionInFactorOfDirectProductOp
1427
1428
ProjectionInFactorOfDirectProductOp( D, k, method_selection_object )  operation
1429
Returns: a morphism in \mathrm{Hom}(\prod_{i=1}^n P_i, P_k)
1430
1431
The arguments are a list of objects D = ( P_1, \dots, P_n ), an integer k,
1432
and an object for method selection. The output is the k-th projection \pi_k:
1433
\prod_{i=1}^n P_i \rightarrow P_k.
1434
1435
6.8-4 ProjectionInFactorOfDirectProductWithGivenDirectProduct
1436
1437
ProjectionInFactorOfDirectProductWithGivenDirectProduct( D, k, P )  operation
1438
Returns: a morphism in \mathrm{Hom}(P, P_k)
1439
1440
The arguments are a list of objects D = ( P_1, \dots, P_n ), an integer k,
1441
and an object P = \prod_{i=1}^n P_i. The output is the k-th projection
1442
\pi_k: P \rightarrow P_k.
1443
1444
6.8-5 UniversalMorphismIntoDirectProduct
1445
1446
UniversalMorphismIntoDirectProduct( arg )  function
1447
Returns: a morphism in \mathrm{Hom}(T, \prod_{i=1}^n P_i)
1448
1449
This is a convenience method. There are three different ways to use this
1450
method.
1451
1452
 The arguments are a list of objects D = ( P_1, \dots, P_n ) and a list
1453
of morphisms \tau = ( \tau_i: T \rightarrow P_i )_{i = 1, \dots, n}.
1454
1455
 The argument is a list of morphisms \tau = ( \tau_i: T \rightarrow P_i
1456
)_{i = 1, \dots, n}.
1457
1458
 The arguments are morphisms \tau_1: T \rightarrow P_1, \dots, \tau_n:
1459
T \rightarrow P_n.
1460
1461
The output is the morphism u(\tau): T \rightarrow \prod_{i=1}^n P_i given by
1462
the universal property of the direct product.
1463
1464
6.8-6 UniversalMorphismIntoDirectProductOp
1465
1466
UniversalMorphismIntoDirectProductOp( D, tau, method_selection_object )  operation
1467
Returns: a morphism in \mathrm{Hom}(T, \prod_{i=1}^n P_i)
1468
1469
The arguments are a list of objects D = ( P_1, \dots, P_n ), a list of
1470
morphisms \tau = ( \tau_i: T \rightarrow P_i )_{i = 1, \dots, n}, and an
1471
object for method selection. The output is the morphism u(\tau): T
1472
\rightarrow \prod_{i=1}^n P_i given by the universal property of the direct
1473
product.
1474
1475
6.8-7 UniversalMorphismIntoDirectProductWithGivenDirectProduct
1476
1477
UniversalMorphismIntoDirectProductWithGivenDirectProduct( D, tau, P )  operation
1478
Returns: a morphism in \mathrm{Hom}(T, \prod_{i=1}^n P_i)
1479
1480
The arguments are a list of objects D = ( P_1, \dots, P_n ), a list of
1481
morphisms \tau = ( \tau_i: T \rightarrow P_i )_{i = 1, \dots, n}, and an
1482
object P = \prod_{i=1}^n P_i. The output is the morphism u(\tau): T
1483
\rightarrow \prod_{i=1}^n P_i given by the universal property of the direct
1484
product.
1485
1486
6.8-8 AddDirectProduct
1487
1488
AddDirectProduct( C, F )  operation
1489
Returns: nothing
1490
1491
The arguments are a category C and a function F. This operations adds the
1492
given function F to the category for the basic operation DirectProduct. F: (
1493
(P_1, \dots, P_n) ) \mapsto P
1494
1495
6.8-9 AddProjectionInFactorOfDirectProduct
1496
1497
AddProjectionInFactorOfDirectProduct( C, F )  operation
1498
Returns: nothing
1499
1500
The arguments are a category C and a function F. This operations adds the
1501
given function F to the category for the basic operation
1502
ProjectionInFactorOfDirectProduct. F: ( (P_1, \dots, P_n),k ) \mapsto \pi_k
1503
1504
6.8-10 AddProjectionInFactorOfDirectProductWithGivenDirectProduct
1505
1506
AddProjectionInFactorOfDirectProductWithGivenDirectProduct( C, F )  operation
1507
Returns: nothing
1508
1509
The arguments are a category C and a function F. This operations adds the
1510
given function F to the category for the basic operation
1511
ProjectionInFactorOfDirectProductWithGivenDirectProduct. F: ( (P_1, \dots,
1512
P_n),k,P ) \mapsto \pi_k
1513
1514
6.8-11 AddUniversalMorphismIntoDirectProduct
1515
1516
AddUniversalMorphismIntoDirectProduct( C, F )  operation
1517
Returns: nothing
1518
1519
The arguments are a category C and a function F. This operations adds the
1520
given function F to the category for the basic operation
1521
UniversalMorphismIntoDirectProduct. F: ( (P_1, \dots, P_n), \tau ) \mapsto
1522
u( \tau )
1523
1524
6.8-12 AddUniversalMorphismIntoDirectProductWithGivenDirectProduct
1525
1526
AddUniversalMorphismIntoDirectProductWithGivenDirectProduct( C, F )  operation
1527
Returns: nothing
1528
1529
The arguments are a category C and a function F. This operations adds the
1530
given function F to the category for the basic operation
1531
UniversalMorphismIntoDirectProductWithGivenDirectProduct. F: ( (P_1, \dots,
1532
P_n), \tau, P ) \mapsto u( \tau )
1533
1534
6.8-13 DirectProductFunctorial
1535
1536
DirectProductFunctorial( L )  operation
1537
Returns: a morphism in \mathrm{Hom}( \prod_{i=1}^n P_i, \prod_{i=1}^n P_i'
1538
)
1539
1540
The argument is a list of morphisms L = (\mu_i: P_i \rightarrow
1541
P'_i)_{i=1\dots n}. The output is a morphism \prod_{i=1}^n P_i \rightarrow
1542
\prod_{i=1}^n P_i' given by the functorality of the direct product.
1543
1544
6.8-14 DirectProductFunctorialWithGivenDirectProducts
1545
1546
DirectProductFunctorialWithGivenDirectProducts( s, L, r )  operation
1547
Returns: a morphism in \mathrm{Hom}( s, r )
1548
1549
The arguments are an object s = \prod_{i=1}^n P_i, a list of morphisms L =
1550
(\mu_i: P_i \rightarrow P'_i)_{i=1\dots n}, and an object r = \prod_{i=1}^n
1551
P_i'. The output is a morphism \prod_{i=1}^n P_i \rightarrow \prod_{i=1}^n
1552
P_i' given by the functorality of the direct product.
1553
1554
6.8-15 AddDirectProductFunctorialWithGivenDirectProducts
1555
1556
AddDirectProductFunctorialWithGivenDirectProducts( C, F )  operation
1557
Returns: nothing
1558
1559
The arguments are a category C and a function F. This operations adds the
1560
given function F to the category for the basic operation
1561
DirectProductFunctorialWithGivenDirectProducts. F: ( \prod_{i=1}^n P_i,
1562
(\mu_i: P_i \rightarrow P'_i)_{i=1\dots n}, \prod_{i=1}^n P_i' ) \mapsto
1563
(\prod_{i=1}^n P_i \rightarrow \prod_{i=1}^n P_i')
1564
1565
1566
6.9 Fiber Product
1567
1568
For a given list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i = 1
1569
\dots n}, a fiber product of D consists of three parts:
1570
1571
 an object P,
1572
1573
 a list of morphisms \pi = ( \pi_i: P \rightarrow P_i )_{i = 1 \dots n}
1574
such that \beta_i \circ \pi_i \sim_{P, B} \beta_j \circ \pi_j for all
1575
pairs i,j.
1576
1577
 a dependent function u mapping each list of morphisms \tau = ( \tau_i:
1578
T \rightarrow P_i ) such that \beta_i \circ \tau_i \sim_{T, B} \beta_j
1579
\circ \tau_j for all pairs i,j to a morphism u( \tau ): T \rightarrow
1580
P such that \pi_i \circ u( \tau ) \sim_{T, P_i} \tau_i for all i = 1,
1581
\dots, n.
1582
1583
The triple ( P, \pi, u ) is called a fiber product of D if the morphisms u(
1584
\tau ) are uniquely determined up to congruence of morphisms. We denote the
1585
object P of such a triple by \mathrm{FiberProduct}(D). We say that the
1586
morphism u( \tau ) is induced by the universal property of the fiber
1587
product. \\  \mathrm{FiberProduct} is a functorial operation. This means:
1588
For a second diagram D' = (\beta_i': P_i' \rightarrow B')_{i = 1 \dots n}
1589
and a natural morphism between pullback diagrams (i.e., a collection of
1590
morphisms (\mu_i: P_i \rightarrow P'_i)_{i=1\dots n} and \beta: B
1591
\rightarrow B' such that \beta_i' \circ \mu_i \sim_{P_i,B'} \beta \circ
1592
\beta_i for i = 1, \dots, n) we obtain a morphism \mathrm{FiberProduct}( D )
1593
\rightarrow \mathrm{FiberProduct}( D' ).
1594
1595
6.9-1 IsomorphismFromFiberProductToKernelOfDiagonalDifference
1596
1597
IsomorphismFromFiberProductToKernelOfDiagonalDifference( D )  operation
1598
Returns: a morphism in \mathrm{Hom}(\mathrm{FiberProduct}(D), \Delta)
1599
1600
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1601
1 \dots n}. The output is a morphism \mathrm{FiberProduct}(D) \rightarrow
1602
\Delta, where \Delta denotes the kernel object equalizing the morphisms
1603
\beta_i.
1604
1605
6.9-2 IsomorphismFromFiberProductToKernelOfDiagonalDifferenceOp
1606
1607
IsomorphismFromFiberProductToKernelOfDiagonalDifferenceOp( D, method_selection_morphism )  operation
1608
Returns: a morphism in \mathrm{Hom}(\mathrm{FiberProduct}(D), \Delta)
1609
1610
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1611
= 1 \dots n} and a morphism for method selection. The output is a morphism
1612
\mathrm{FiberProduct}(D) \rightarrow \Delta, where \Delta denotes the kernel
1613
object equalizing the morphisms \beta_i.
1614
1615
6.9-3 AddIsomorphismFromFiberProductToKernelOfDiagonalDifference
1616
1617
AddIsomorphismFromFiberProductToKernelOfDiagonalDifference( C, F )  operation
1618
Returns: nothing
1619
1620
The arguments are a category C and a function F. This operations adds the
1621
given function F to the category for the basic operation
1622
IsomorphismFromFiberProductToKernelOfDiagonalDifference. F: ( ( \beta_i: P_i
1623
\rightarrow B )_{i = 1 \dots n} ) \mapsto \mathrm{FiberProduct}(D)
1624
\rightarrow \Delta
1625
1626
6.9-4 IsomorphismFromKernelOfDiagonalDifferenceToFiberProduct
1627
1628
IsomorphismFromKernelOfDiagonalDifferenceToFiberProduct( D )  operation
1629
Returns: a morphism in \mathrm{Hom}(\Delta, \mathrm{FiberProduct}(D))
1630
1631
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1632
1 \dots n}. The output is a morphism \Delta \rightarrow
1633
\mathrm{FiberProduct}(D), where \Delta denotes the kernel object equalizing
1634
the morphisms \beta_i.
1635
1636
6.9-5 IsomorphismFromKernelOfDiagonalDifferenceToFiberProductOp
1637
1638
IsomorphismFromKernelOfDiagonalDifferenceToFiberProductOp( D )  operation
1639
Returns: a morphism in \mathrm{Hom}(\Delta, \mathrm{FiberProduct}(D))
1640
1641
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1642
1 \dots n} and a morphism for method selection. The output is a morphism
1643
\Delta \rightarrow \mathrm{FiberProduct}(D), where \Delta denotes the kernel
1644
object equalizing the morphisms \beta_i.
1645
1646
6.9-6 AddIsomorphismFromKernelOfDiagonalDifferenceToFiberProduct
1647
1648
AddIsomorphismFromKernelOfDiagonalDifferenceToFiberProduct( C, F )  operation
1649
Returns: nothing
1650
1651
The arguments are a category C and a function F. This operations adds the
1652
given function F to the category for the basic operation
1653
IsomorphismFromKernelOfDiagonalDifferenceToFiberProduct. F: ( ( \beta_i: P_i
1654
\rightarrow B )_{i = 1 \dots n} ) \mapsto \Delta \rightarrow
1655
\mathrm{FiberProduct}(D)
1656
1657
6.9-7 DirectSumDiagonalDifference
1658
1659
DirectSumDiagonalDifference( D )  operation
1660
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n P_i, B )
1661
1662
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1663
1 \dots n}. The output is a morphism \bigoplus_{i=1}^n P_i \rightarrow B
1664
such that its kernel equalizes the \beta_i.
1665
1666
6.9-8 DirectSumDiagonalDifferenceOp
1667
1668
DirectSumDiagonalDifferenceOp( D, method_selection_morphism )  operation
1669
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n P_i, B )
1670
1671
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1672
1 \dots n} and a morphism for method selection. The output is a morphism
1673
\bigoplus_{i=1}^n P_i \rightarrow B such that its kernel equalizes the
1674
\beta_i.
1675
1676
6.9-9 AddDirectSumDiagonalDifference
1677
1678
AddDirectSumDiagonalDifference( C, F )  operation
1679
Returns: nothing
1680
1681
The arguments are a category C and a function F. This operations adds the
1682
given function F to the category for the basic operation
1683
DirectSumDiagonalDifference. F: ( D ) \mapsto
1684
\mathrm{DirectSumDiagonalDifference}(D)
1685
1686
6.9-10 FiberProductEmbeddingInDirectSum
1687
1688
FiberProductEmbeddingInDirectSum( D )  operation
1689
Returns: a morphism in \mathrm{Hom}( \mathrm{FiberProduct}(D),
1690
\bigoplus_{i=1}^n P_i )
1691
1692
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1693
1 \dots n}. The output is the natural embedding \mathrm{FiberProduct}(D)
1694
\rightarrow \bigoplus_{i=1}^n P_i.
1695
1696
6.9-11 FiberProductEmbeddingInDirectSumOp
1697
1698
FiberProductEmbeddingInDirectSumOp( D, method_selection_morphism )  operation
1699
Returns: a morphism in \mathrm{Hom}( \mathrm{FiberProduct}(D),
1700
\bigoplus_{i=1}^n P_i )
1701
1702
The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i =
1703
1 \dots n} and a morphism for method selection. The output is the natural
1704
embedding \mathrm{FiberProduct}(D) \rightarrow \bigoplus_{i=1}^n P_i.
1705
1706
6.9-12 AddFiberProductEmbeddingInDirectSum
1707
1708
AddFiberProductEmbeddingInDirectSum( C, F )  operation
1709
Returns: nothing
1710
1711
The arguments are a category C and a function F. This operations adds the
1712
given function F to the category for the basic operation
1713
FiberProductEmbeddingInDirectSum. F: ( ( \beta_i: P_i \rightarrow B )_{i = 1
1714
\dots n} ) \mapsto \mathrm{FiberProduct}(D) \rightarrow \bigoplus_{i=1}^n
1715
P_i
1716
1717
6.9-13 FiberProduct
1718
1719
FiberProduct( arg )  function
1720
Returns: an object
1721
1722
This is a convenience method. There are two different ways to use this
1723
method:
1724
1725
 The argument is a list of morphisms D = ( \beta_i: P_i \rightarrow B
1726
)_{i = 1 \dots n}.
1727
1728
 The arguments are morphisms \beta_1: P_1 \rightarrow B, \dots,
1729
\beta_n: P_n \rightarrow B.
1730
1731
The output is the fiber product \mathrm{FiberProduct}(D).
1732
1733
6.9-14 FiberProductOp
1734
1735
FiberProductOp( D, method_selection_morphism )  operation
1736
Returns: an object
1737
1738
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1739
= 1 \dots n} and a morphism for method selection. The output is the fiber
1740
product \mathrm{FiberProduct}(D).
1741
1742
6.9-15 ProjectionInFactorOfFiberProduct
1743
1744
ProjectionInFactorOfFiberProduct( D, k )  operation
1745
Returns: a morphism in \mathrm{Hom}( \mathrm{FiberProduct}(D), P_k )
1746
1747
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1748
= 1 \dots n} and an integer k. The output is the k-th projection \pi_{k}:
1749
\mathrm{FiberProduct}(D) \rightarrow P_k.
1750
1751
6.9-16 ProjectionInFactorOfFiberProductOp
1752
1753
ProjectionInFactorOfFiberProductOp( D, k, method_selection_morphism )  operation
1754
Returns: a morphism in \mathrm{Hom}( \mathrm{FiberProduct}(D), P_k )
1755
1756
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1757
= 1 \dots n}, an integer k, and a morphism for method selection. The output
1758
is the k-th projection \pi_{k}: \mathrm{FiberProduct}(D) \rightarrow P_k.
1759
1760
6.9-17 ProjectionInFactorOfFiberProductWithGivenFiberProduct
1761
1762
ProjectionInFactorOfFiberProductWithGivenFiberProduct( D, k, P )  operation
1763
Returns: a morphism in \mathrm{Hom}( P, P_k )
1764
1765
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1766
= 1 \dots n}, an integer k, and an object P = \mathrm{FiberProduct}(D). The
1767
output is the k-th projection \pi_{k}: P \rightarrow P_k.
1768
1769
6.9-18 UniversalMorphismIntoFiberProduct
1770
1771
UniversalMorphismIntoFiberProduct( arg )  function
1772
1773
This is a convenience method. There are three different ways to use this
1774
method:
1775
1776
 The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B
1777
)_{i = 1 \dots n} and a list of morphisms \tau = ( \tau_i: T
1778
\rightarrow P_i ) such that \beta_i \circ \tau_i \sim_{T, B} \beta_j
1779
\circ \tau_j for all pairs i,j. The output is the morphism u( \tau ):
1780
T \rightarrow \mathrm{FiberProduct}(D) given by the universal property
1781
of the fiber product.
1782
1783
 The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B
1784
)_{i = 1 \dots n} and morphisms \tau_1: T \rightarrow P_1, \dots,
1785
\tau_n: T \rightarrow P_n such that \beta_i \circ \tau_i \sim_{T, B}
1786
\beta_j \circ \tau_j for all pairs i,j. The output is the morphism u(
1787
\tau ): T \rightarrow \mathrm{FiberProduct}(D) given by the universal
1788
property of the fiber product.
1789
1790
6.9-19 UniversalMorphismIntoFiberProductOp
1791
1792
UniversalMorphismIntoFiberProductOp( D, tau, method_selection_morphism )  operation
1793
Returns: a morphism in \mathrm{Hom}( T, \mathrm{FiberProduct}(D) )
1794
1795
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1796
= 1 \dots n}, a list of morphisms \tau = ( \tau_i: T \rightarrow P_i ) such
1797
that \beta_i \circ \tau_i \sim_{T, B} \beta_j \circ \tau_j for all pairs
1798
i,j, and a morphism for method selection. The output is the morphism u( \tau
1799
): T \rightarrow \mathrm{FiberProduct}(D) given by the universal property of
1800
the fiber product.
1801
1802
6.9-20 UniversalMorphismIntoFiberProductWithGivenFiberProduct
1803
1804
UniversalMorphismIntoFiberProductWithGivenFiberProduct( D, tau, P )  operation
1805
Returns: a morphism in \mathrm{Hom}( T, P )
1806
1807
The arguments are a list of morphisms D = ( \beta_i: P_i \rightarrow B )_{i
1808
= 1 \dots n}, a list of morphisms \tau = ( \tau_i: T \rightarrow P_i ) such
1809
that \beta_i \circ \tau_i \sim_{T, B} \beta_j \circ \tau_j for all pairs
1810
i,j, and an object P = \mathrm{FiberProduct}(D). The output is the morphism
1811
u( \tau ): T \rightarrow P given by the universal property of the fiber
1812
product.
1813
1814
6.9-21 AddFiberProduct
1815
1816
AddFiberProduct( C, F )  operation
1817
Returns: nothing
1818
1819
The arguments are a category C and a function F. This operations adds the
1820
given function F to the category for the basic operation FiberProduct. F: (
1821
(\beta_i: P_i \rightarrow B)_{i = 1 \dots n} ) \mapsto P
1822
1823
6.9-22 AddProjectionInFactorOfFiberProduct
1824
1825
AddProjectionInFactorOfFiberProduct( C, F )  operation
1826
Returns: nothing
1827
1828
The arguments are a category C and a function F. This operations adds the
1829
given function F to the category for the basic operation
1830
ProjectionInFactorOfFiberProduct. F: ( (\beta_i: P_i \rightarrow B)_{i = 1
1831
\dots n}, k ) \mapsto \pi_k
1832
1833
6.9-23 AddProjectionInFactorOfFiberProductWithGivenFiberProduct
1834
1835
AddProjectionInFactorOfFiberProductWithGivenFiberProduct( C, F )  operation
1836
Returns: nothing
1837
1838
The arguments are a category C and a function F. This operations adds the
1839
given function F to the category for the basic operation
1840
ProjectionInFactorOfFiberProductWithGivenFiberProduct. F: ( (\beta_i: P_i
1841
\rightarrow B)_{i = 1 \dots n}, k,P ) \mapsto \pi_k
1842
1843
6.9-24 AddUniversalMorphismIntoFiberProduct
1844
1845
AddUniversalMorphismIntoFiberProduct( C, F )  operation
1846
Returns: nothing
1847
1848
The arguments are a category C and a function F. This operations adds the
1849
given function F to the category for the basic operation
1850
UniversalMorphismIntoFiberProduct. F: ( (\beta_i: P_i \rightarrow B)_{i = 1
1851
\dots n}, \tau ) \mapsto u(\tau)
1852
1853
6.9-25 AddUniversalMorphismIntoFiberProductWithGivenFiberProduct
1854
1855
AddUniversalMorphismIntoFiberProductWithGivenFiberProduct( C, F )  operation
1856
Returns: nothing
1857
1858
The arguments are a category C and a function F. This operations adds the
1859
given function F to the category for the basic operation
1860
UniversalMorphismIntoFiberProductWithGivenFiberProduct. F: ( (\beta_i: P_i
1861
\rightarrow B)_{i = 1 \dots n}, \tau, P ) \mapsto u(\tau)
1862
1863
6.9-26 FiberProductFunctorial
1864
1865
FiberProductFunctorial( L )  operation
1866
Returns: a morphism in \mathrm{Hom}(\mathrm{FiberProduct}( ( \beta_i )_{i=1
1867
\dots n} ), \mathrm{FiberProduct}( ( \beta_i' )_{i=1 \dots n} ))
1868
1869
The argument is a list of triples of morphisms L = ( (\beta_i: P_i
1870
\rightarrow B, \mu_i: P_i \rightarrow P_i', \beta_i': P_i' \rightarrow
1871
B')_{i = 1 \dots n} ) such that there exists a morphism \beta: B \rightarrow
1872
B' such that \beta_i' \circ \mu_i \sim_{P_i,B'} \beta \circ \beta_i for i =
1873
1, \dots, n. The output is the morphism \mathrm{FiberProduct}( ( \beta_i
1874
)_{i=1 \dots n} ) \rightarrow \mathrm{FiberProduct}( ( \beta_i' )_{i=1 \dots
1875
n} ) given by the functorality of the fiber product.
1876
1877
6.9-27 FiberProductFunctorialWithGivenFiberProducts
1878
1879
FiberProductFunctorialWithGivenFiberProducts( s, L, r )  operation
1880
Returns: a morphism in \mathrm{Hom}(s, r)
1881
1882
The arguments are an object s = \mathrm{FiberProduct}( ( \beta_i )_{i=1
1883
\dots n} ), a list of triples of morphisms L = ( (\beta_i: P_i \rightarrow
1884
B, \mu_i: P_i \rightarrow P_i', \beta_i': P_i' \rightarrow B')_{i = 1 \dots
1885
n} ) such that there exists a morphism \beta: B \rightarrow B' such that
1886
\beta_i' \circ \mu_i \sim_{P_i,B'} \beta \circ \beta_i for i = 1, \dots, n,
1887
and an object r = \mathrm{FiberProduct}( ( \beta_i' )_{i=1 \dots n} ). The
1888
output is the morphism s \rightarrow r given by the functorality of the
1889
fiber product.
1890
1891
6.9-28 AddFiberProductFunctorialWithGivenFiberProducts
1892
1893
AddFiberProductFunctorialWithGivenFiberProducts( C, F )  operation
1894
Returns: nothing
1895
1896
The arguments are a category C and a function F. This operations adds the
1897
given function F to the category for the basic operation
1898
FiberProductFunctorialWithGivenFiberProducts. F: ( \mathrm{FiberProduct}( (
1899
\beta_i )_{i=1 \dots n} ), (\beta_i: P_i \rightarrow B, \mu_i: P_i
1900
\rightarrow P_i', \beta_i': P_i' \rightarrow B')_{i = 1 \dots n},
1901
\mathrm{FiberProduct}( ( \beta_i' )_{i=1 \dots n} ) ) \mapsto
1902
(\mathrm{FiberProduct}( ( \beta_i )_{i=1 \dots n} ) \rightarrow
1903
\mathrm{FiberProduct}( ( \beta_i' )_{i=1 \dots n} ) )
1904
1905
1906
6.10 Pushout
1907
1908
For a given list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i = 1
1909
\dots n}, a pushout of D consists of three parts:
1910
1911
 an object I,
1912
1913
 a list of morphisms \iota = ( \iota_i: I_i \rightarrow I )_{i = 1
1914
\dots n} such that \iota_i \circ \beta_i \sim_{B,I} \iota_j \circ
1915
\beta_j for all pairs i,j,
1916
1917
 a dependent function u mapping each list of morphisms \tau = ( \tau_i:
1918
I_i \rightarrow T )_{i = 1 \dots n} such that \tau_i \circ \beta_i
1919
\sim_{B,T} \tau_j \circ \beta_j to a morphism u( \tau ): I \rightarrow
1920
T such that u( \tau ) \circ \iota_i \sim_{I_i, T} \tau_i for all i =
1921
1, \dots, n.
1922
1923
The triple ( I, \iota, u ) is called a pushout of D if the morphisms u( \tau
1924
) are uniquely determined up to congruence of morphisms. We denote the
1925
object I of such a triple by \mathrm{Pushout}(D). We say that the morphism
1926
u( \tau ) is induced by the universal property of the pushout. \\ 
1927
\mathrm{Pushout} is a functorial operation. This means: For a second diagram
1928
D' = (\beta_i': B' \rightarrow I_i')_{i = 1 \dots n} and a natural morphism
1929
between pushout diagrams (i.e., a collection of morphisms (\mu_i: I_i
1930
\rightarrow I'_i)_{i=1\dots n} and \beta: B \rightarrow B' such that
1931
\beta_i' \circ \beta \sim_{B, I_i'} \mu_i \circ \beta_i for i = 1, \dots n)
1932
we obtain a morphism \mathrm{Pushout}( D ) \rightarrow \mathrm{Pushout}( D'
1933
).
1934
1935
6.10-1 IsomorphismFromPushoutToCokernelOfDiagonalDifference
1936
1937
IsomorphismFromPushoutToCokernelOfDiagonalDifference( D )  operation
1938
Returns: a morphism in \mathrm{Hom}( \mathrm{Pushout}(D), \Delta)
1939
1940
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
1941
1 \dots n}. The output is a morphism \mathrm{Pushout}(D) \rightarrow \Delta,
1942
where \Delta denotes the cokernel object coequalizing the morphisms \beta_i.
1943
1944
6.10-2 IsomorphismFromPushoutToCokernelOfDiagonalDifferenceOp
1945
1946
IsomorphismFromPushoutToCokernelOfDiagonalDifferenceOp( D, method_selection_morphism )  operation
1947
Returns: a morphism in \mathrm{Hom}( \mathrm{Pushout}(D), \Delta)
1948
1949
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
1950
1 \dots n} and a morphism for method selection. The output is a morphism
1951
\mathrm{Pushout}(D) \rightarrow \Delta, where \Delta denotes the cokernel
1952
object coequalizing the morphisms \beta_i.
1953
1954
6.10-3 AddIsomorphismFromPushoutToCokernelOfDiagonalDifference
1955
1956
AddIsomorphismFromPushoutToCokernelOfDiagonalDifference( C, F )  operation
1957
Returns: nothing
1958
1959
The arguments are a category C and a function F. This operations adds the
1960
given function F to the category for the basic operation
1961
IsomorphismFromPushoutToCokernelOfDiagonalDifference. F: ( ( \beta_i: B
1962
\rightarrow I_i )_{i = 1 \dots n} ) \mapsto (\mathrm{Pushout}(D) \rightarrow
1963
\Delta)
1964
1965
6.10-4 IsomorphismFromCokernelOfDiagonalDifferenceToPushout
1966
1967
IsomorphismFromCokernelOfDiagonalDifferenceToPushout( D )  operation
1968
Returns: a morphism in \mathrm{Hom}( \Delta, \mathrm{Pushout}(D))
1969
1970
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
1971
1 \dots n}. The output is a morphism \Delta \rightarrow \mathrm{Pushout}(D),
1972
where \Delta denotes the cokernel object coequalizing the morphisms \beta_i.
1973
1974
6.10-5 IsomorphismFromCokernelOfDiagonalDifferenceToPushoutOp
1975
1976
IsomorphismFromCokernelOfDiagonalDifferenceToPushoutOp( D, method_selection_morphism )  operation
1977
Returns: a morphism in \mathrm{Hom}( \Delta, \mathrm{Pushout}(D))
1978
1979
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
1980
1 \dots n} and a morphism for method selection. The output is a morphism
1981
\Delta \rightarrow \mathrm{Pushout}(D), where \Delta denotes the cokernel
1982
object coequalizing the morphisms \beta_i.
1983
1984
6.10-6 AddIsomorphismFromCokernelOfDiagonalDifferenceToPushout
1985
1986
AddIsomorphismFromCokernelOfDiagonalDifferenceToPushout( C, F )  operation
1987
Returns: nothing
1988
1989
The arguments are a category C and a function F. This operations adds the
1990
given function F to the category for the basic operation
1991
IsomorphismFromCokernelOfDiagonalDifferenceToPushout. F: ( ( \beta_i: B
1992
\rightarrow I_i )_{i = 1 \dots n} ) \mapsto (\Delta \rightarrow
1993
\mathrm{Pushout}(D))
1994
1995
6.10-7 DirectSumCodiagonalDifference
1996
1997
DirectSumCodiagonalDifference( D )  operation
1998
Returns: a morphism in \mathrm{Hom}(B, \bigoplus_{i=1}^n I_i)
1999
2000
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
2001
1 \dots n}. The output is a morphism B \rightarrow \bigoplus_{i=1}^n I_i
2002
such that its cokernel coequalizes the \beta_i.
2003
2004
6.10-8 DirectSumCodiagonalDifferenceOp
2005
2006
DirectSumCodiagonalDifferenceOp( D, method_selection_morphism )  operation
2007
Returns: a morphism in \mathrm{Hom}(B, \bigoplus_{i=1}^n I_i)
2008
2009
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
2010
1 \dots n} and a morphism for method selection. The output is a morphism B
2011
\rightarrow \bigoplus_{i=1}^n I_i such that its cokernel coequalizes the
2012
\beta_i.
2013
2014
6.10-9 AddDirectSumCodiagonalDifference
2015
2016
AddDirectSumCodiagonalDifference( C, F )  operation
2017
Returns: nothing
2018
2019
The arguments are a category C and a function F. This operations adds the
2020
given function F to the category for the basic operation
2021
DirectSumCodiagonalDifference. F: ( D ) \mapsto
2022
\mathrm{DirectSumCodiagonalDifference}(D)
2023
2024
6.10-10 DirectSumProjectionInPushout
2025
2026
DirectSumProjectionInPushout( D )  operation
2027
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n I_i,
2028
\mathrm{Pushout}(D) )
2029
2030
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
2031
1 \dots n}. The output is the natural projection \bigoplus_{i=1}^n I_i
2032
\rightarrow \mathrm{Pushout}(D).
2033
2034
6.10-11 DirectSumProjectionInPushoutOp
2035
2036
DirectSumProjectionInPushoutOp( D, method_selection_morphism )  operation
2037
Returns: a morphism in \mathrm{Hom}( \bigoplus_{i=1}^n I_i,
2038
\mathrm{Pushout}(D) )
2039
2040
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
2041
1 \dots n} and a morphism for method selection. The output is the natural
2042
projection \bigoplus_{i=1}^n I_i \rightarrow \mathrm{Pushout}(D).
2043
2044
6.10-12 AddDirectSumProjectionInPushout
2045
2046
AddDirectSumProjectionInPushout( C, F )  operation
2047
Returns: nothing
2048
2049
The arguments are a category C and a function F. This operations adds the
2050
given function F to the category for the basic operation
2051
DirectSumProjectionInPushout. F: ( ( \beta_i: B \rightarrow I_i )_{i = 1
2052
\dots n} ) \mapsto (\bigoplus_{i=1}^n I_i \rightarrow \mathrm{Pushout}(D))
2053
2054
6.10-13 Pushout
2055
2056
Pushout( D )  operation
2057
Returns: an object
2058
2059
The argument is a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i =
2060
1 \dots n} The output is the pushout \mathrm{Pushout}(D).
2061
2062
6.10-14 Pushout
2063
2064
Pushout( D )  operation
2065
Returns: an object
2066
2067
This is a convenience method. The arguments are a morphism \alpha and a
2068
morphism \beta. The output is the pushout \mathrm{Pushout}(\alpha, \beta).
2069
2070
6.10-15 PushoutOp
2071
2072
PushoutOp( D )  operation
2073
Returns: an object
2074
2075
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2076
= 1 \dots n} and a morphism for method selection. The output is the pushout
2077
\mathrm{Pushout}(D).
2078
2079
6.10-16 InjectionOfCofactorOfPushout
2080
2081
InjectionOfCofactorOfPushout( D, k )  operation
2082
Returns: a morphism in \mathrm{Hom}( I_k, \mathrm{Pushout}( D ) ).
2083
2084
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2085
= 1 \dots n} and an integer k. The output is the k-th injection \iota_k: I_k
2086
\rightarrow \mathrm{Pushout}( D ).
2087
2088
6.10-17 InjectionOfCofactorOfPushoutOp
2089
2090
InjectionOfCofactorOfPushoutOp( D, k, method_selection_morphism )  operation
2091
Returns: a morphism in \mathrm{Hom}( I_k, \mathrm{Pushout}( D ) ).
2092
2093
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2094
= 1 \dots n}, an integer k, and a morphism for method selection. The output
2095
is the k-th injection \iota_k: I_k \rightarrow \mathrm{Pushout}( D ).
2096
2097
6.10-18 InjectionOfCofactorOfPushoutWithGivenPushout
2098
2099
InjectionOfCofactorOfPushoutWithGivenPushout( D, k, I )  operation
2100
Returns: a morphism in \mathrm{Hom}( I_k, \mathrm{Pushout}( D ) ).
2101
2102
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2103
= 1 \dots n}, an integer k, and an object I = \mathrm{Pushout}(D). The
2104
output is the k-th injection \iota_k: I_k \rightarrow \mathrm{Pushout}( D ).
2105
2106
6.10-19 UniversalMorphismFromPushout
2107
2108
UniversalMorphismFromPushout( arg )  function
2109
2110
This is a convenience method. There are three different ways to use this
2111
method:
2112
2113
 The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i
2114
)_{i = 1 \dots n} and a list of morphisms \tau = ( \tau_i: I_i
2115
\rightarrow T )_{i = 1 \dots n} such that \tau_i \circ \beta_i
2116
\sim_{B,T} \tau_j \circ \beta_j. The output is the morphism u( \tau ):
2117
\mathrm{Pushout}(D) \rightarrow T given by the universal property of
2118
the pushout.
2119
2120
 The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i
2121
)_{i = 1 \dots n} and morphisms \tau_1: I_1 \rightarrow T, \dots,
2122
\tau_n: I_n \rightarrow T such that \tau_i \circ \beta_i \sim_{B,T}
2123
\tau_j \circ \beta_j. The output is the morphism u( \tau ):
2124
\mathrm{Pushout}(D) \rightarrow T given by the universal property of
2125
the pushout.
2126
2127
6.10-20 UniversalMorphismFromPushoutOp
2128
2129
UniversalMorphismFromPushoutOp( D, tau, method_selection_morphism )  operation
2130
Returns: a morphism in \mathrm{Hom}( \mathrm{Pushout}(D), T )
2131
2132
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2133
= 1 \dots n}, a list of morphisms \tau = ( \tau_i: I_i \rightarrow T )_{i =
2134
1 \dots n} such that \tau_i \circ \beta_i \sim_{B,T} \tau_j \circ \beta_j,
2135
and a morphism for method selection. The output is the morphism u( \tau ):
2136
\mathrm{Pushout}(D) \rightarrow T given by the universal property of the
2137
pushout.
2138
2139
6.10-21 UniversalMorphismFromPushoutWithGivenPushout
2140
2141
UniversalMorphismFromPushoutWithGivenPushout( D, tau, I )  operation
2142
Returns: a morphism in \mathrm{Hom}( I, T )
2143
2144
The arguments are a list of morphisms D = ( \beta_i: B \rightarrow I_i )_{i
2145
= 1 \dots n}, a list of morphisms \tau = ( \tau_i: I_i \rightarrow T )_{i =
2146
1 \dots n} such that \tau_i \circ \beta_i \sim_{B,T} \tau_j \circ \beta_j,
2147
and an object I = \mathrm{Pushout}(D). The output is the morphism u( \tau ):
2148
I \rightarrow T given by the universal property of the pushout.
2149
2150
6.10-22 AddPushout
2151
2152
AddPushout( C, F )  operation
2153
Returns: nothing
2154
2155
The arguments are a category C and a function F. This operations adds the
2156
given function F to the category for the basic operation Pushout. F: (
2157
(\beta_i: B \rightarrow I_i)_{i = 1 \dots n} ) \mapsto I
2158
2159
6.10-23 AddInjectionOfCofactorOfPushout
2160
2161
AddInjectionOfCofactorOfPushout( C, F )  operation
2162
Returns: nothing
2163
2164
The arguments are a category C and a function F. This operations adds the
2165
given function F to the category for the basic operation
2166
InjectionOfCofactorOfPushout. F: ( (\beta_i: B \rightarrow I_i)_{i = 1 \dots
2167
n}, k ) \mapsto \iota_k
2168
2169
6.10-24 AddInjectionOfCofactorOfPushoutWithGivenPushout
2170
2171
AddInjectionOfCofactorOfPushoutWithGivenPushout( C, F )  operation
2172
Returns: nothing
2173
2174
The arguments are a category C and a function F. This operations adds the
2175
given function F to the category for the basic operation
2176
InjectionOfCofactorOfPushoutWithGivenPushout. F: ( (\beta_i: B \rightarrow
2177
I_i)_{i = 1 \dots n}, k, I ) \mapsto \iota_k
2178
2179
6.10-25 AddUniversalMorphismFromPushout
2180
2181
AddUniversalMorphismFromPushout( C, F )  operation
2182
Returns: nothing
2183
2184
The arguments are a category C and a function F. This operations adds the
2185
given function F to the category for the basic operation
2186
UniversalMorphismFromPushout. F: ( (\beta_i: B \rightarrow I_i)_{i = 1 \dots
2187
n}, \tau ) \mapsto u(\tau)
2188
2189
6.10-26 AddUniversalMorphismFromPushoutWithGivenPushout
2190
2191
AddUniversalMorphismFromPushoutWithGivenPushout( C, F )  operation
2192
Returns: nothing
2193
2194
The arguments are a category C and a function F. This operations adds the
2195
given function F to the category for the basic operation
2196
UniversalMorphismFromPushout. F: ( (\beta_i: B \rightarrow I_i)_{i = 1 \dots
2197
n}, \tau, I ) \mapsto u(\tau)
2198
2199
6.10-27 PushoutFunctorial
2200
2201
PushoutFunctorial( L )  operation
2202
Returns: a morphism in \mathrm{Hom}(\mathrm{Pushout}( ( \beta_i )_{i=1}^n
2203
), \mathrm{Pushout}( ( \beta_i' )_{i=1}^n ))
2204
2205
The argument is a list L = ( ( \beta_i: B \rightarrow I_i, \mu_i: I_i
2206
\rightarrow I_i', \beta_i': B' \rightarrow I_i' )_{i = 1 \dots n} ) such
2207
that there exists a morphism \beta: B \rightarrow B' such that \beta_i'
2208
\circ \beta \sim_{B, I_i'} \mu_i \circ \beta_i for i = 1, \dots n. The
2209
output is the morphism \mathrm{Pushout}( ( \beta_i )_{i=1}^n ) \rightarrow
2210
\mathrm{Pushout}( ( \beta_i' )_{i=1}^n ) given by the functorality of the
2211
pushout.
2212
2213
6.10-28 PushoutFunctorialWithGivenPushouts
2214
2215
PushoutFunctorialWithGivenPushouts( s, L, r )  operation
2216
Returns: a morphism in \mathrm{Hom}(s, r)
2217
2218
The arguments are an object s = \mathrm{Pushout}( ( \beta_i )_{i=1}^n ), a
2219
list L = ( ( \beta_i: B \rightarrow I_i, \mu_i: I_i \rightarrow I_i',
2220
\beta_i': B' \rightarrow I_i' )_{i = 1 \dots n} ) such that there exists a
2221
morphism \beta: B \rightarrow B' such that \beta_i' \circ \beta \sim_{B,
2222
I_i'} \mu_i \circ \beta_i for i = 1, \dots n, and an object r =
2223
\mathrm{Pushout}( ( \beta_i' )_{i=1}^n ). The output is the morphism s
2224
\rightarrow r given by the functorality of the pushout.
2225
2226
6.10-29 AddPushoutFunctorialWithGivenPushouts
2227
2228
AddPushoutFunctorialWithGivenPushouts( C, F )  operation
2229
Returns: nothing
2230
2231
The arguments are a category C and a function F. This operations adds the
2232
given function F to the category for the basic operation PushoutFunctorial.
2233
F: ( \mathrm{Pushout}( ( \beta_i )_{i=1}^n ), ( \beta_i: B \rightarrow I_i,
2234
\mu_i: I_i \rightarrow I_i', \beta_i': B' \rightarrow I_i' )_{i = 1 \dots
2235
n}, \mathrm{Pushout}( ( \beta_i' )_{i=1}^n ) ) \mapsto (\mathrm{Pushout}( (
2236
\beta_i )_{i=1}^n ) \rightarrow \mathrm{Pushout}( ( \beta_i' )_{i=1}^n ) )
2237
2238
2239
6.11 Image
2240
2241
For a given morphism \alpha: A \rightarrow B, an image of \alpha consists of
2242
four parts:
2243
2244
 an object I,
2245
2246
 a morphism c: A \rightarrow I,
2247
2248
 a monomorphism \iota: I \hookrightarrow B such that \iota \circ c
2249
\sim_{A,B} \alpha,
2250
2251
 a dependent function u mapping each pair of morphisms \tau = ( \tau_1:
2252
A \rightarrow T, \tau_2: T \hookrightarrow B ) where \tau_2 is a
2253
monomorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha to a
2254
morphism u(\tau): I \rightarrow T such that \tau_2 \circ u(\tau)
2255
\sim_{I,B} \iota and u(\tau) \circ c \sim_{A,T} \tau_1.
2256
2257
The 4-tuple ( I, c, \iota, u ) is called an image of \alpha if the morphisms
2258
u( \tau ) are uniquely determined up to congruence of morphisms. We denote
2259
the object I of such a 4-tuple by \mathrm{im}(\alpha). We say that the
2260
morphism u( \tau ) is induced by the universal property of the image.
2261
2262
6.11-1 IsomorphismFromImageObjectToKernelOfCokernel
2263
2264
IsomorphismFromImageObjectToKernelOfCokernel( alpha )  attribute
2265
Returns: a morphism in \mathrm{Hom}( \mathrm{im}(\alpha),
2266
\mathrm{KernelObject}( \mathrm{CokernelProjection}( \alpha ) ) )
2267
2268
The argument is a morphism \alpha. The output is the canonical morphism
2269
\mathrm{im}(\alpha) \rightarrow \mathrm{KernelObject}(
2270
\mathrm{CokernelProjection}( \alpha ) ).
2271
2272
6.11-2 AddIsomorphismFromImageObjectToKernelOfCokernel
2273
2274
AddIsomorphismFromImageObjectToKernelOfCokernel( C, F )  operation
2275
Returns: nothing
2276
2277
The arguments are a category C and a function F. This operations adds the
2278
given function F to the category for the basic operation
2279
IsomorphismFromImageObjectToKernelOfCokernel. F: \alpha \mapsto (
2280
\mathrm{im}(\alpha) \rightarrow \mathrm{KernelObject}(
2281
\mathrm{CokernelProjection}( \alpha ) ) )
2282
2283
6.11-3 IsomorphismFromKernelOfCokernelToImageObject
2284
2285
IsomorphismFromKernelOfCokernelToImageObject( alpha )  attribute
2286
Returns: a morphism in \mathrm{Hom}( \mathrm{KernelObject}(
2287
\mathrm{CokernelProjection}( \alpha ) ), \mathrm{im}(\alpha) )
2288
2289
The argument is a morphism \alpha. The output is the canonical morphism
2290
\mathrm{KernelObject}( \mathrm{CokernelProjection}( \alpha ) ) \rightarrow
2291
\mathrm{im}(\alpha).
2292
2293
6.11-4 AddIsomorphismFromKernelOfCokernelToImageObject
2294
2295
AddIsomorphismFromKernelOfCokernelToImageObject( C, F )  operation
2296
Returns: nothing
2297
2298
The arguments are a category C and a function F. This operations adds the
2299
given function F to the category for the basic operation
2300
IsomorphismFromKernelOfCokernelToImageObject. F: \alpha \mapsto (
2301
\mathrm{KernelObject}( \mathrm{CokernelProjection}( \alpha ) ) \rightarrow
2302
\mathrm{im}(\alpha) )
2303
2304
6.11-5 ImageObject
2305
2306
ImageObject( alpha )  attribute
2307
Returns: an object
2308
2309
The argument is a morphism \alpha. The output is the image \mathrm{im}(
2310
\alpha ).
2311
2312
6.11-6 ImageEmbedding
2313
2314
ImageEmbedding( alpha )  attribute
2315
Returns: a morphism in \mathrm{Hom}(\mathrm{im}(\alpha), B)
2316
2317
The argument is a morphism \alpha: A \rightarrow B. The output is the image
2318
embedding \iota: \mathrm{im}(\alpha) \hookrightarrow B.
2319
2320
6.11-7 ImageEmbeddingWithGivenImageObject
2321
2322
ImageEmbeddingWithGivenImageObject( alpha, I )  operation
2323
Returns: a morphism in \mathrm{Hom}(I, B)
2324
2325
The argument is a morphism \alpha: A \rightarrow B and an object I =
2326
\mathrm{im}( \alpha ). The output is the image embedding \iota: I
2327
\hookrightarrow B.
2328
2329
6.11-8 CoastrictionToImage
2330
2331
CoastrictionToImage( alpha )  attribute
2332
Returns: a morphism in \mathrm{Hom}(A, \mathrm{im}( \alpha ))
2333
2334
The argument is a morphism \alpha: A \rightarrow B. The output is the
2335
coastriction to image c: A \rightarrow \mathrm{im}( \alpha ).
2336
2337
6.11-9 CoastrictionToImageWithGivenImageObject
2338
2339
CoastrictionToImageWithGivenImageObject( alpha, I )  operation
2340
Returns: a morphism in \mathrm{Hom}(A, I)
2341
2342
The argument is a morphism \alpha: A \rightarrow B and an object I =
2343
\mathrm{im}( \alpha ). The output is the coastriction to image c: A
2344
\rightarrow I.
2345
2346
6.11-10 UniversalMorphismFromImage
2347
2348
UniversalMorphismFromImage( alpha, tau )  operation
2349
Returns: a morphism in \mathrm{Hom}(\mathrm{im}(\alpha), T)
2350
2351
The arguments are a morphism \alpha: A \rightarrow B and a pair of morphisms
2352
\tau = ( \tau_1: A \rightarrow T, \tau_2: T \hookrightarrow B ) where \tau_2
2353
is a monomorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha. The
2354
output is the morphism u(\tau): \mathrm{im}(\alpha) \rightarrow T given by
2355
the universal property of the image.
2356
2357
6.11-11 UniversalMorphismFromImageWithGivenImageObject
2358
2359
UniversalMorphismFromImageWithGivenImageObject( alpha, tau, I )  operation
2360
Returns: a morphism in \mathrm{Hom}(I, T)
2361
2362
The arguments are a morphism \alpha: A \rightarrow B, a pair of morphisms
2363
\tau = ( \tau_1: A \rightarrow T, \tau_2: T \hookrightarrow B ) where \tau_2
2364
is a monomorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha, and an
2365
object I = \mathrm{im}( \alpha ). The output is the morphism u(\tau):
2366
\mathrm{im}(\alpha) \rightarrow T given by the universal property of the
2367
image.
2368
2369
6.11-12 AddImageObject
2370
2371
AddImageObject( C, F )  operation
2372
Returns: nothing
2373
2374
The arguments are a category C and a function F. This operations adds the
2375
given function F to the category for the basic operation ImageObject. F:
2376
\alpha \mapsto I.
2377
2378
6.11-13 AddImageEmbedding
2379
2380
AddImageEmbedding( C, F )  operation
2381
Returns: nothing
2382
2383
The arguments are a category C and a function F. This operations adds the
2384
given function F to the category for the basic operation ImageEmbedding. F:
2385
\alpha \mapsto \iota.
2386
2387
6.11-14 AddImageEmbeddingWithGivenImageObject
2388
2389
AddImageEmbeddingWithGivenImageObject( C, F )  operation
2390
Returns: nothing
2391
2392
The arguments are a category C and a function F. This operations adds the
2393
given function F to the category for the basic operation
2394
ImageEmbeddingWithGivenImageObject. F: (\alpha,I) \mapsto \iota.
2395
2396
6.11-15 AddCoastrictionToImage
2397
2398
AddCoastrictionToImage( C, F )  operation
2399
Returns: nothing
2400
2401
The arguments are a category C and a function F. This operations adds the
2402
given function F to the category for the basic operation
2403
CoastrictionToImage. F: \alpha \mapsto c.
2404
2405
6.11-16 AddCoastrictionToImageWithGivenImageObject
2406
2407
AddCoastrictionToImageWithGivenImageObject( C, F )  operation
2408
Returns: nothing
2409
2410
The arguments are a category C and a function F. This operations adds the
2411
given function F to the category for the basic operation
2412
CoastrictionToImageWithGivenImageObject. F: (\alpha,I) \mapsto c.
2413
2414
6.11-17 AddUniversalMorphismFromImage
2415
2416
AddUniversalMorphismFromImage( C, F )  operation
2417
Returns: nothing
2418
2419
The arguments are a category C and a function F. This operations adds the
2420
given function F to the category for the basic operation
2421
UniversalMorphismFromImage. F: (\alpha, \tau) \mapsto u(\tau).
2422
2423
6.11-18 AddUniversalMorphismFromImageWithGivenImageObject
2424
2425
AddUniversalMorphismFromImageWithGivenImageObject( C, F )  operation
2426
Returns: nothing
2427
2428
The arguments are a category C and a function F. This operations adds the
2429
given function F to the category for the basic operation
2430
UniversalMorphismFromImageWithGivenImageObject. F: (\alpha, \tau, I) \mapsto
2431
u(\tau).
2432
2433
2434
6.12 Coimage
2435
2436
For a given morphism \alpha: A \rightarrow B, a coimage of \alpha consists
2437
of four parts:
2438
2439
 an object C,
2440
2441
 an epimorphism \pi: A \twoheadrightarrow C,
2442
2443
 a morphism a: C \rightarrow B such that a \circ \pi \sim_{A,B} \alpha,
2444
2445
 a dependent function u mapping each pair of morphisms \tau = ( \tau_1:
2446
A \twoheadrightarrow T, \tau_2: T \rightarrow B ) where \tau_1 is an
2447
epimorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha to a
2448
morphism u(\tau): T \rightarrow C such that u( \tau ) \circ \tau_1
2449
\sim_{A,C} \pi and a \circ u( \tau ) \sim_{T,B} \tau_2.
2450
2451
The 4-tuple ( C, \pi, a, u ) is called a coimage of \alpha if the morphisms
2452
u( \tau ) are uniquely determined up to congruence of morphisms. We denote
2453
the object C of such a 4-tuple by \mathrm{coim}(\alpha). We say that the
2454
morphism u( \tau ) is induced by the universal property of the coimage.
2455
2456
6.12-1 MorphismFromCoimageToImage
2457
2458
MorphismFromCoimageToImage( alpha )  attribute
2459
Returns: a morphism in \mathrm{Hom}(\mathrm{coim}(\alpha),
2460
\mathrm{im}(\alpha))
2461
2462
The argument is a morphism \alpha: A \rightarrow B. The output is the
2463
canonical morphism (in a preabelian category) \mathrm{coim}(\alpha)
2464
\rightarrow \mathrm{im}(\alpha).
2465
2466
6.12-2 MorphismFromCoimageToImageWithGivenObjects
2467
2468
MorphismFromCoimageToImageWithGivenObjects( alpha )  operation
2469
Returns: a morphism in \mathrm{Hom}(C,I)
2470
2471
The argument is an object C = \mathrm{coim}(\alpha), a morphism \alpha: A
2472
\rightarrow B, and an object I = \mathrm{im}(\alpha). The output is the
2473
canonical morphism (in a preabelian category) C \rightarrow I.
2474
2475
6.12-3 AddMorphismFromCoimageToImageWithGivenObjects
2476
2477
AddMorphismFromCoimageToImageWithGivenObjects( C, F )  operation
2478
Returns: nothing
2479
2480
The arguments are a category C and a function F. This operations adds the
2481
given function F to the category for the basic operation
2482
MorphismFromCoimageToImageWithGivenObjects. F: (C, \alpha, I) \mapsto ( C
2483
\rightarrow I ).
2484
2485
6.12-4 InverseMorphismFromCoimageToImage
2486
2487
InverseMorphismFromCoimageToImage( alpha )  attribute
2488
Returns: a morphism in \mathrm{Hom}(\mathrm{im}(\alpha),
2489
\mathrm{coim}(\alpha))
2490
2491
The argument is a morphism \alpha: A \rightarrow B. The output is the
2492
inverse of the canonical morphism (in an abelian category)
2493
\mathrm{im}(\alpha) \rightarrow \mathrm{coim}(\alpha).
2494
2495
6.12-5 InverseMorphismFromCoimageToImageWithGivenObjects
2496
2497
InverseMorphismFromCoimageToImageWithGivenObjects( alpha )  operation
2498
Returns: a morphism in \mathrm{Hom}(I,C)
2499
2500
The argument is an object C = \mathrm{coim}(\alpha), a morphism \alpha: A
2501
\rightarrow B, and an object I = \mathrm{im}(\alpha). The output is the
2502
inverse of the canonical morphism (in an abelian category) I \rightarrow C.
2503
2504
6.12-6 AddInverseMorphismFromCoimageToImageWithGivenObjects
2505
2506
AddInverseMorphismFromCoimageToImageWithGivenObjects( C, F )  operation
2507
Returns: nothing
2508
2509
The arguments are a category C and a function F. This operations adds the
2510
given function F to the category for the basic operation
2511
MorphismFromCoimageToImageWithGivenObjects. F: (C, \alpha, I) \mapsto ( I
2512
\rightarrow C ).
2513
2514
6.12-7 IsomorphismFromCoimageToCokernelOfKernel
2515
2516
IsomorphismFromCoimageToCokernelOfKernel( alpha )  attribute
2517
Returns: a morphism in \mathrm{Hom}( \mathrm{coim}( \alpha ),
2518
\mathrm{CokernelObject}( \mathrm{KernelEmbedding}( \alpha ) ) ).
2519
2520
The argument is a morphism \alpha: A \rightarrow B. The output is the
2521
canonical morphism \mathrm{coim}( \alpha ) \rightarrow
2522
\mathrm{CokernelObject}( \mathrm{KernelEmbedding}( \alpha ) ).
2523
2524
6.12-8 AddIsomorphismFromCoimageToCokernelOfKernel
2525
2526
AddIsomorphismFromCoimageToCokernelOfKernel( C, F )  operation
2527
Returns: nothing
2528
2529
The arguments are a category C and a function F. This operations adds the
2530
given function F to the category for the basic operation
2531
IsomorphismFromCoimageToCokernelOfKernel. F: \alpha \mapsto ( \mathrm{coim}(
2532
\alpha ) \rightarrow \mathrm{CokernelObject}( \mathrm{KernelEmbedding}(
2533
\alpha ) ) ).
2534
2535
6.12-9 IsomorphismFromCokernelOfKernelToCoimage
2536
2537
IsomorphismFromCokernelOfKernelToCoimage( alpha )  attribute
2538
Returns: a morphism in \mathrm{Hom}( \mathrm{CokernelObject}(
2539
\mathrm{KernelEmbedding}( \alpha ) ), \mathrm{coim}( \alpha ) ).
2540
2541
The argument is a morphism \alpha: A \rightarrow B. The output is the
2542
canonical morphism \mathrm{CokernelObject}( \mathrm{KernelEmbedding}( \alpha
2543
) ) \rightarrow \mathrm{coim}( \alpha ).
2544
2545
6.12-10 AddIsomorphismFromCokernelOfKernelToCoimage
2546
2547
AddIsomorphismFromCokernelOfKernelToCoimage( C, F )  operation
2548
Returns: nothing
2549
2550
The arguments are a category C and a function F. This operations adds the
2551
given function F to the category for the basic operation
2552
IsomorphismFromCokernelOfKernelToCoimage. F: \alpha \mapsto (
2553
\mathrm{CokernelObject}( \mathrm{KernelEmbedding}( \alpha ) ) \rightarrow
2554
\mathrm{coim}( \alpha ) ).
2555
2556
6.12-11 Coimage
2557
2558
Coimage( alpha )  attribute
2559
Returns: an object
2560
2561
The argument is a morphism \alpha. The output is the coimage \mathrm{coim}(
2562
\alpha ).
2563
2564
6.12-12 CoimageProjection
2565
2566
CoimageProjection( C )  attribute
2567
Returns: a morphism in \mathrm{Hom}(A, C)
2568
2569
This is a convenience method. The argument is an object C which was created
2570
as a coimage of a morphism \alpha: A \rightarrow B. The output is the
2571
coimage projection \pi: A \twoheadrightarrow C.
2572
2573
6.12-13 CoimageProjection
2574
2575
CoimageProjection( alpha )  attribute
2576
Returns: a morphism in \mathrm{Hom}(A, \mathrm{coim}( \alpha ))
2577
2578
The argument is a morphism \alpha: A \rightarrow B. The output is the
2579
coimage projection \pi: A \twoheadrightarrow \mathrm{coim}( \alpha ).
2580
2581
6.12-14 CoimageProjectionWithGivenCoimage
2582
2583
CoimageProjectionWithGivenCoimage( alpha, C )  operation
2584
Returns: a morphism in \mathrm{Hom}(A, C)
2585
2586
The arguments are a morphism \alpha: A \rightarrow B and an object C =
2587
\mathrm{coim}(\alpha). The output is the coimage projection \pi: A
2588
\twoheadrightarrow C.
2589
2590
6.12-15 AstrictionToCoimage
2591
2592
AstrictionToCoimage( C )  attribute
2593
Returns: a morphism in \mathrm{Hom}(C,B)
2594
2595
This is a convenience method. The argument is an object C which was created
2596
as a coimage of a morphism \alpha: A \rightarrow B. The output is the
2597
astriction to coimage a: C \rightarrow B.
2598
2599
6.12-16 AstrictionToCoimage
2600
2601
AstrictionToCoimage( alpha )  attribute
2602
Returns: a morphism in \mathrm{Hom}(\mathrm{coim}( \alpha ),B)
2603
2604
The argument is a morphism \alpha: A \rightarrow B. The output is the
2605
astriction to coimage a: \mathrm{coim}( \alpha ) \rightarrow B.
2606
2607
6.12-17 AstrictionToCoimageWithGivenCoimage
2608
2609
AstrictionToCoimageWithGivenCoimage( alpha, C )  operation
2610
Returns: a morphism in \mathrm{Hom}(C,B)
2611
2612
The argument are a morphism \alpha: A \rightarrow B and an object C =
2613
\mathrm{coim}( \alpha ). The output is the astriction to coimage a: C
2614
\rightarrow B.
2615
2616
6.12-18 UniversalMorphismIntoCoimage
2617
2618
UniversalMorphismIntoCoimage( alpha, tau )  operation
2619
Returns: a morphism in \mathrm{Hom}(T, \mathrm{coim}( \alpha ))
2620
2621
The arguments are a morphism \alpha: A \rightarrow B and a pair of morphisms
2622
\tau = ( \tau_1: A \twoheadrightarrow T, \tau_2: T \rightarrow B ) where
2623
\tau_1 is an epimorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha.
2624
The output is the morphism u(\tau): T \rightarrow \mathrm{coim}( \alpha )
2625
given by the universal property of the coimage.
2626
2627
6.12-19 UniversalMorphismIntoCoimageWithGivenCoimage
2628
2629
UniversalMorphismIntoCoimageWithGivenCoimage( alpha, tau, C )  operation
2630
Returns: a morphism in \mathrm{Hom}(T, C)
2631
2632
The arguments are a morphism \alpha: A \rightarrow B, a pair of morphisms
2633
\tau = ( \tau_1: A \twoheadrightarrow T, \tau_2: T \rightarrow B ) where
2634
\tau_1 is an epimorphism such that \tau_2 \circ \tau_1 \sim_{A,B} \alpha,
2635
and an object C = \mathrm{coim}( \alpha ). The output is the morphism
2636
u(\tau): T \rightarrow C given by the universal property of the coimage.
2637
2638
6.12-20 AddCoimage
2639
2640
AddCoimage( C, F )  operation
2641
Returns: nothing
2642
2643
The arguments are a category C and a function F. This operations adds the
2644
given function F to the category for the basic operation Coimage. F: \alpha
2645
\mapsto C
2646
2647
6.12-21 AddCoimageProjection
2648
2649
AddCoimageProjection( C, F )  operation
2650
Returns: nothing
2651
2652
The arguments are a category C and a function F. This operations adds the
2653
given function F to the category for the basic operation CoimageProjection.
2654
F: \alpha \mapsto \pi
2655
2656
6.12-22 AddCoimageProjectionWithGivenCoimage
2657
2658
AddCoimageProjectionWithGivenCoimage( C, F )  operation
2659
Returns: nothing
2660
2661
The arguments are a category C and a function F. This operations adds the
2662
given function F to the category for the basic operation
2663
CoimageProjectionWithGivenCoimage. F: (\alpha,C) \mapsto \pi
2664
2665
6.12-23 AddAstrictionToCoimage
2666
2667
AddAstrictionToCoimage( C, F )  operation
2668
Returns: nothing
2669
2670
The arguments are a category C and a function F. This operations adds the
2671
given function F to the category for the basic operation
2672
AstrictionToCoimage. F: \alpha \mapsto a
2673
2674
6.12-24 AddAstrictionToCoimageWithGivenCoimage
2675
2676
AddAstrictionToCoimageWithGivenCoimage( C, F )  operation
2677
Returns: nothing
2678
2679
The arguments are a category C and a function F. This operations adds the
2680
given function F to the category for the basic operation
2681
AstrictionToCoimageWithGivenCoimage. F: (\alpha,C) \mapsto a
2682
2683
6.12-25 AddUniversalMorphismIntoCoimage
2684
2685
AddUniversalMorphismIntoCoimage( C, F )  operation
2686
Returns: nothing
2687
2688
The arguments are a category C and a function F. This operations adds the
2689
given function F to the category for the basic operation
2690
UniversalMorphismIntoCoimage. F: (\alpha, \tau) \mapsto u(\tau)
2691
2692
6.12-26 AddUniversalMorphismIntoCoimageWithGivenCoimage
2693
2694
AddUniversalMorphismIntoCoimageWithGivenCoimage( C, F )  operation
2695
Returns: nothing
2696
2697
The arguments are a category C and a function F. This operations adds the
2698
given function F to the category for the basic operation
2699
UniversalMorphismIntoCoimageWithGivenCoimage. F: (\alpha, \tau,C) \mapsto
2700
u(\tau)
2701
2702
2703