GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
1[1X1 [33X[0;0YGeneralized Morphism Category[133X[101X23[33X[0;0YLet [23X\mathbf{A}[123X be an abelian category. We denote its generalized morphism4category by [23X\mathbf{G(A)}[123X.[133X567[1X1.1 [33X[0;0YGAP Categories[133X[101X89[1X1.1-1 IsGeneralizedMorphismCategoryObject[101X1011[29X[2XIsGeneralizedMorphismCategoryObject[102X( [3Xobject[103X ) [32X filter12[6XReturns:[106X [33X[0;10Y[10Xtrue[110X or [10Xfalse[110X[133X1314[33X[0;0YThe GAP category of objects in the generalized morphism category.[133X1516[1X1.1-2 IsGeneralizedMorphism[101X1718[29X[2XIsGeneralizedMorphism[102X( [3Xobject[103X ) [32X filter19[6XReturns:[106X [33X[0;10Y[10Xtrue[110X or [10Xfalse[110X[133X2021[33X[0;0YThe GAP category of morphisms in the generalized morphism category.[133X222324[1X1.2 [33X[0;0YAttributes[133X[101X2526[1X1.2-1 UnderlyingHonestObject[101X2728[29X[2XUnderlyingHonestObject[102X( [3Xa[103X ) [32X attribute29[6XReturns:[106X [33X[0;10Yan object in [23X\mathbf{A}[123X[133X3031[33X[0;0YThe argument is an object [23Xa[123X in the generalized morphism category. The output32is its underlying honest object[133X3334[1X1.2-2 DomainOfGeneralizedMorphism[101X3536[29X[2XDomainOfGeneralizedMorphism[102X( [3Xalpha[103X ) [32X attribute37[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}( d, a )[123X[133X3839[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X. The output40is its domain [23Xd \hookrightarrow a \in \mathbf{A}[123X.[133X4142[1X1.2-3 Codomain[101X4344[29X[2XCodomain[102X( [3Xalpha[103X ) [32X attribute45[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}( b, c )[123X[133X4647[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X. The output48is its codomain [23Xb \twoheadrightarrow c \in \mathbf{A}[123X.[133X4950[1X1.2-4 AssociatedMorphism[101X5152[29X[2XAssociatedMorphism[102X( [3Xalpha[103X ) [32X attribute53[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}( d, c )[123X[133X5455[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X. The output56is its associated morphism [23Xd \rightarrow c \in \mathbf{A}[123X.[133X5758[1X1.2-5 DomainAssociatedMorphismCodomainTriple[101X5960[29X[2XDomainAssociatedMorphismCodomainTriple[102X( [3Xalpha[103X ) [32X attribute61[6XReturns:[106X [33X[0;10Ya triple of morphisms in [23X\mathbf{A}[123X[133X6263[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X. The output64is a triple [23X( d \hookrightarrow a, d \rightarrow c, b \twoheadrightarrow c )[123X65consisting of its domain, associated morphism, and codomain.[133X6667[1X1.2-6 HonestRepresentative[101X6869[29X[2XHonestRepresentative[102X( [3Xalpha[103X ) [32X attribute70[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{A}}( a, b )[123X[133X7172[33X[0;0YThe argument is a generalized morphism [23X\alpha: a \rightarrow b[123X. The output73is the honest representative in [23X\mathbf{A}[123X of [23X\alpha[123X, if it exists,74otherwise an error is thrown.[133X7576[1X1.2-7 GeneralizedInverse[101X7778[29X[2XGeneralizedInverse[102X( [3Xalpha[103X ) [32X operation79[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,a)[123X[133X8081[33X[0;0YThe argument is a morphism [23X\alpha: a \rightarrow b \in \mathbf{A}[123X. The82output is its generalized inverse [23Xb \rightarrow a[123X.[133X8384[1X1.2-8 IdempotentDefinedBySubobject[101X8586[29X[2XIdempotentDefinedBySubobject[102X( [3Xalpha[103X ) [32X operation87[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,b)[123X[133X8889[33X[0;0YThe argument is a subobject [23X\alpha: a \hookrightarrow b \in \mathbf{A}[123X. The90output is the idempotent [23Xb \rightarrow b \in \mathbf{G(A)}[123X defined by91[23X\alpha[123X.[133X9293[1X1.2-9 IdempotentDefinedByFactorobject[101X9495[29X[2XIdempotentDefinedByFactorobject[102X( [3Xalpha[103X ) [32X operation96[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(b,b)[123X[133X9798[33X[0;0YThe argument is a factorobject [23X\alpha: b \twoheadrightarrow a \in99\mathbf{A}[123X. The output is the idempotent [23Xb \rightarrow b \in \mathbf{G(A)}[123X100defined by [23X\alpha[123X.[133X101102[1X1.2-10 UnderlyingHonestCategory[101X103104[29X[2XUnderlyingHonestCategory[102X( [3XC[103X ) [32X attribute105[6XReturns:[106X [33X[0;10Ya category[133X106107[33X[0;0YThe argument is a generalized morphism category [23XC = \mathbf{G(A)}[123X. The108output is [23X\mathbf{A}[123X.[133X109110111[1X1.3 [33X[0;0YOperations[133X[101X112113[1X1.3-1 GeneralizedMorphismFromFactorToSubobject[101X114115[29X[2XGeneralizedMorphismFromFactorToSubobject[102X( [3Xbeta[103X, [3Xalpha[103X ) [32X operation116[6XReturns:[106X [33X[0;10Ya morphism in [23X\mathrm{Hom}_{\mathbf{G(A)}}(c,a)[123X[133X117118[33X[0;0YThe arguments are a a factorobject [23X\beta: b \twoheadrightarrow c[123X, and a119subobject [23X\alpha: a \hookrightarrow b[123X. The output is the generalized120morphism from the factorobject to the subobject.[133X121122[1X1.3-2 CommonRestriction[101X123124[29X[2XCommonRestriction[102X( [3XL[103X ) [32X operation125[6XReturns:[106X [33X[0;10Ya list of generalized morphisms[133X126127[33X[0;0YThe argument is a list [23XL[123X of generalized morphisms by three arrows having the128same source. The output is a list of generalized morphisms by three arrows129which is the comman restriction of [23XL[123X.[133X130131[1X1.3-3 ConcatenationProduct[101X132133[29X[2XConcatenationProduct[102X( [3XL[103X ) [32X operation134[6XReturns:[106X [33X[0;10Ya generalized moprhism[133X135136[33X[0;0YThe argument is a list [23XL = ( \alpha_1, \dots, \alpha_n )[123X of generalized137morphisms (with same data structures). The output is their concatenation138product, i.e., a generalized morphism [23X\alpha[123X with139[23X\mathrm{UnderlyingHonestObject}( \mathrm{Source}( \alpha ) ) =140\bigoplus_{i=1}^n \mathrm{UnderlyingHonestObject}( \mathrm{Source}( \alpha_i141) )[123X, and [23X\mathrm{UnderlyingHonestObject}( \mathrm{Range}( \alpha ) ) =142\bigoplus_{i=1}^n \mathrm{UnderlyingHonestObject}( \mathrm{Range}( \alpha_i143) )[123X, and with morphisms in the representation of [23X\alpha[123X given as the direct144sums of the corresponding morphisms of the [23X\alpha_i[123X.[133X145146147[1X1.4 [33X[0;0YProperties[133X[101X148149[1X1.4-1 IsHonest[101X150151[29X[2XIsHonest[102X( [3Xalpha[103X ) [32X property152[6XReturns:[106X [33X[0;10Ya boolean[133X153154[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X. The output is [10Xtrue[110X if [23X\alpha[123X155admits an honest representative, otherwise [10Xfalse[110X.[133X156157[1X1.4-2 HasFullDomain[101X158159[29X[2XHasFullDomain[102X( [3Xalpha[103X ) [32X property160[6XReturns:[106X [33X[0;10Ya boolean[133X161162[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X. The output is [10Xtrue[110X if the163domain of [23X\alpha[123X is an isomorphism, otherwise [10Xfalse[110X.[133X164165[1X1.4-3 HasFullCodomain[101X166167[29X[2XHasFullCodomain[102X( [3Xalpha[103X ) [32X property168[6XReturns:[106X [33X[0;10Ya boolean[133X169170[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X. The output is [10Xtrue[110X if the171codomain of [23X\alpha[123X is an isomorphism, otherwise [10Xfalse[110X.[133X172173[1X1.4-4 IsSingleValued[101X174175[29X[2XIsSingleValued[102X( [3Xalpha[103X ) [32X property176[6XReturns:[106X [33X[0;10Ya boolean[133X177178[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X. The output is [10Xtrue[110X if the179codomain of [23X\alpha[123X is an isomorphism, otherwise [10Xfalse[110X.[133X180181[1X1.4-5 IsTotal[101X182183[29X[2XIsTotal[102X( [3Xalpha[103X ) [32X property184[6XReturns:[106X [33X[0;10Ya boolean[133X185186[33X[0;0YThe argument is a generalized morphism [23X\alpha[123X. The output is [10Xtrue[110X if the187domain of [23X\alpha[123X is an isomorphism, otherwise [10Xfalse[110X.[133X188189190[1X1.5 [33X[0;0YConvenience methods[133X[101X191192[33X[0;0YThis section contains operations which, depending on the current generalized193morphism standard of the system and the category, might point to other194Operations. Please use them only as convenience and never in serious code.[133X195196[1X1.5-1 GeneralizedMorphismCategory[101X197198[29X[2XGeneralizedMorphismCategory[102X( [3XC[103X ) [32X operation199[6XReturns:[106X [33X[0;10Ya category[133X200201[33X[0;0YCreates a new category of generalized morphisms. Might point to202GeneralizedMorphismCategoryByThreeArrows,203GeneralizedMorphismCategoryByCospans, or GeneralizedMorphismCategoryBySpans[133X204205[1X1.5-2 GeneralizedMorphismObject[101X206207[29X[2XGeneralizedMorphismObject[102X( [3XA[103X ) [32X operation208[6XReturns:[106X [33X[0;10Yan object in the generalized morphism category[133X209210[33X[0;0YCreates an object in the current generalized morphism category, depending on211the standard[133X212213[1X1.5-3 AsGeneralizedMorphism[101X214215[29X[2XAsGeneralizedMorphism[102X( [3Xphi[103X ) [32X operation216[6XReturns:[106X [33X[0;10Ya generalized morphism[133X217218[33X[0;0YReturns the corresponding morphism to phi in the current generalized219morphism category.[133X220221[1X1.5-4 GeneralizedMorphism[101X222223[29X[2XGeneralizedMorphism[102X( [3Xphi[103X, [3Xpsi[103X ) [32X operation224[6XReturns:[106X [33X[0;10Ya generalized morphism[133X225226[33X[0;0YReturns the corresponding morphism to phi and psi in the current generalized227morphism category.[133X228229[1X1.5-5 GeneralizedMorphism[101X230231[29X[2XGeneralizedMorphism[102X( [3Xiota[103X, [3Xphi[103X, [3Xpi[103X ) [32X operation232[6XReturns:[106X [33X[0;10Ya generalized morphism[133X233234[33X[0;0YReturns the corresponding morphism to iota, phi and psi in the current235generalized morphism category.[133X236237[1X1.5-6 GeneralizedMorphismWithRangeAid[101X238239[29X[2XGeneralizedMorphismWithRangeAid[102X( [3Xarg1[103X, [3Xarg2[103X ) [32X operation240241[33X[0;0YReturns a generalized morphism with range aid by three arrows or by span, or242a generalized morphism by cospan, depending on the standard.[133X243244[1X1.5-7 GeneralizedMorphismWithSourceAid[101X245246[29X[2XGeneralizedMorphismWithSourceAid[102X( [3Xarg1[103X, [3Xarg2[103X ) [32X operation247248[33X[0;0YReturns a generalized morphism with source aid by three arrows or by cospan,249or a generalized morphism by span, depending on the standard.[133X250251252253