GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
1[1X3 [33X[0;0YGeneralized Morphism Category by Spans[133X[101X234[1X3.1 [33X[0;0YGAP Categories[133X[101X56[1X3.1-1 IsGeneralizedMorphismCategoryBySpansObject[101X78[29X[2XIsGeneralizedMorphismCategoryBySpansObject[102X( [3Xobject[103X ) [32X filter9[6XReturns:[106X [33X[0;10Y[10Xtrue[110X or [10Xfalse[110X[133X1011[33X[0;0YThe GAP category of objects in the generalized morphism category by spans.[133X1213[1X3.1-2 IsGeneralizedMorphismBySpan[101X1415[29X[2XIsGeneralizedMorphismBySpan[102X( [3Xobject[103X ) [32X filter16[6XReturns:[106X [33X[0;10Y[10Xtrue[110X or [10Xfalse[110X[133X1718[33X[0;0YThe GAP category of morphisms in the generalized morphism category by spans.[133X192021[1X3.2 [33X[0;0YProperties[133X[101X2223[1X3.2-1 HasIdentityAsReversedArrow[101X2425[29X[2XHasIdentityAsReversedArrow[102X( [3Xalpha[103X ) [32X property26[6XReturns:[106X [33X[0;10Y[10Xtrue[110X or [10Xfalse[110X[133X2728[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X by a span [23Xa \leftarrow b29\rightarrow c[123X. The output is [10Xtrue[110X if [23Xa \leftarrow b[123X is congruent to an30identity morphism, [10Xfalse[110X otherwise.[133X313233[1X3.3 [33X[0;0YAttributes[133X[101X3435[1X3.3-1 UnderlyingHonestObject[101X3637[29X[2XUnderlyingHonestObject[102X( [3Xa[103X ) [32X attribute38[6XReturns:[106X [33X[0;10Yan object in [23X\mathbf{A}[123X[133X3940[33X[0;0YThe argument is an object [23Xa[123X in the generalized morphism category by spans.41The output is its underlying honest object.[133X4243[1X3.3-2 Arrow[101X4445[29X[2XArrow[102X( [3Xalpha[103X ) [32X attribute46[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}(b,c)[123X[133X4748[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X by a span [23Xa \leftarrow b49\rightarrow c[123X. The output is its arrow [23Xb \rightarrow c[123X.[133X5051[1X3.3-3 ReversedArrow[101X5253[29X[2XReversedArrow[102X( [3Xalpha[103X ) [32X attribute54[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}(b,a)[123X[133X5556[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X by a span [23Xa \leftarrow b57\rightarrow c[123X. The output is its reversed arrow [23Xa \leftarrow b[123X.[133X5859[1X3.3-4 NormalizedSpanTuple[101X6061[29X[2XNormalizedSpanTuple[102X( [3Xalpha[103X ) [32X attribute62[6XReturns:[106X [33X[0;10Ya pair of morphisms in [23X\mathbf{A}[123X.[133X6364[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X by a span.65The output is its normalized span pair [23X(a \leftarrow d, d \rightarrow b)[123X.[133X6667[1X3.3-5 PseudoInverse[101X6869[29X[2XPseudoInverse[102X( [3Xalpha[103X ) [32X attribute70[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,a)[123X[133X7172[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X by a span.73The output is its pseudo inverse [23Xb \rightarrow a[123X.[133X7475[1X3.3-6 GeneralizedInverseBySpan[101X7677[29X[2XGeneralizedInverseBySpan[102X( [3Xalpha[103X ) [32X attribute78[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,a)[123X[133X7980[33X[0;0YThe argument is a morphism [23X\alpha: a \rightarrow b \in \mathbf{A}[123X. The81output is its generalized inverse [23Xb \rightarrow a[123X by span.[133X8283[1X3.3-7 IdempotentDefinedBySubobjectBySpan[101X8485[29X[2XIdempotentDefinedBySubobjectBySpan[102X( [3Xalpha[103X ) [32X attribute86[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,b)[123X[133X8788[33X[0;0YThe argument is a subobject [23X\alpha: a \hookrightarrow b \in \mathbf{A}[123X. The89output is the idempotent [23Xb \rightarrow b \in \mathbf{G(A)}[123X by span defined90by [23X\alpha[123X.[133X9192[1X3.3-8 IdempotentDefinedByFactorobjectBySpan[101X9394[29X[2XIdempotentDefinedByFactorobjectBySpan[102X( [3Xalpha[103X ) [32X attribute95[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,b)[123X[133X9697[33X[0;0YThe argument is a factorobject [23X\alpha: b \twoheadrightarrow a \in98\mathbf{A}[123X. The output is the idempotent [23Xb \rightarrow b \in \mathbf{G(A)}[123X99by span defined by [23X\alpha[123X.[133X100101[1X3.3-9 NormalizedSpan[101X102103[29X[2XNormalizedSpan[102X( [3Xalpha[103X ) [32X attribute104[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(a,b)[123X[133X105106[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X by a span.107The output is its normalization by span.[133X108109110[1X3.4 [33X[0;0YOperations[133X[101X111112[1X3.4-1 GeneralizedMorphismFromFactorToSubobjectBySpan[101X113114[29X[2XGeneralizedMorphismFromFactorToSubobjectBySpan[102X( [3Xbeta[103X, [3Xalpha[103X ) [32X operation115[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(c,a)[123X[133X116117[33X[0;0YThe arguments are a a factorobject [23X\beta: b \twoheadrightarrow c[123X, and a118subobject [23X\alpha: a \hookrightarrow b[123X. The output is the generalized119morphism by span from the factorobject to the subobject.[133X120121122[1X3.5 [33X[0;0YConstructors[133X[101X123124[1X3.5-1 GeneralizedMorphismBySpan[101X125126[29X[2XGeneralizedMorphismBySpan[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation127[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(a,b)[123X[133X128129[33X[0;0YThe arguments are morphisms [23X\alpha: a \leftarrow c[123X and [23X\beta: c \rightarrow130b[123X in [23X\mathbf{A}[123X. The output is a generalized morphism by span with arrow131[23X\beta[123X and reversed arrow [23X\alpha[123X.[133X132133[1X3.5-2 GeneralizedMorphismBySpan[101X134135[29X[2XGeneralizedMorphismBySpan[102X( [3Xalpha[103X, [3Xbeta[103X, [3Xgamma[103X ) [32X operation136[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(a,d)[123X[133X137138[33X[0;0YThe arguments are morphisms [23X\alpha: a \leftarrow b[123X, [23X\beta: b \rightarrow c[123X,139and [23X\gamma: c \leftarrow d[123X in [23X\mathbf{A}[123X. The output is a generalized140morphism by span defined by the composition the given three arrows regarded141as generalized morphisms.[133X142143[1X3.5-3 GeneralizedMorphismBySpanWithRangeAid[101X144145[29X[2XGeneralizedMorphismBySpanWithRangeAid[102X( [3Xalpha[103X, [3Xbeta[103X ) [32X operation146[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(a,c)[123X[133X147148[33X[0;0YThe arguments are morphisms [23X\alpha: a \rightarrow b[123X, and [23X\beta: b \leftarrow149c[123X in [23X\mathbf{A}[123X. The output is a generalized morphism by span defined by the150composition the given two arrows regarded as generalized morphisms.[133X151152[1X3.5-4 AsGeneralizedMorphismBySpan[101X153154[29X[2XAsGeneralizedMorphismBySpan[102X( [3Xalpha[103X ) [32X attribute155[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(a,b)[123X[133X156157[33X[0;0YThe argument is a morphism [23X\alpha: a \rightarrow b[123X in [23X\mathbf{A}[123X. The output158is the honest generalized morphism by span defined by [23X\alpha[123X.[133X159160[1X3.5-5 GeneralizedMorphismCategoryBySpans[101X161162[29X[2XGeneralizedMorphismCategoryBySpans[102X( [3XA[103X ) [32X attribute163[6XReturns:[106X [33X[0;10Ya category[133X164165[33X[0;0YThe argument is an abelian category [23X\mathbf{A}[123X. The output is its166generalized morphism category [23X\mathbf{G(A)}[123X by spans.[133X167168[1X3.5-6 GeneralizedMorphismBySpansObject[101X169170[29X[2XGeneralizedMorphismBySpansObject[102X( [3Xa[103X ) [32X attribute171[6XReturns:[106X [33X[0;10Yan object in [23X\mathbf{G(A)}[123X[133X172173[33X[0;0YThe argument is an object [23Xa[123X in an abelian category [23X\mathbf{A}[123X. The output is174the object in the generalized morphism category by spans whose underlying175honest object is [23Xa[123X.[133X176177178179