‣ CAP_INTERNAL_METHOD_NAME_LIST_FOR_PREORDERED_SET_OF_CATEGORY | ( global variable ) |
‣ CreateProsetOrPosetOfCategory ( C ) | ( operation ) |
‣ ProsetOfCategory ( C ) | ( attribute ) |
gap> LoadPackage( "Locales", false ); true gap> q := FinQuiver( "q(a,b)[f:a->b,g:b->a]" ); FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) gap> F := PathCategory( q ); PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) gap> C := F / [ [ F.fg, F.id_a ], [ F.gf, F.id_b ] ]; PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] gap> P := ProsetOfCategory( C ); ProsetOfCategory( PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] ) gap> Display( P ); A CAP category with name ProsetOfCategory( PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] ): 11 primitive operations were used to derive 76 operations for this category which algorithmically * IsThinCategory * IsCategoryWithDecidableColifts * IsCategoryWithDecidableLifts * IsFiniteCategory * IsEquippedWithHomomorphismStructure gap> SetOfObjects( P ); [ An object in the proset given by: (a), An object in the proset given by: (b) ] gap> P.a = P.b; false gap> Length( SetOfMorphisms( P ) ); 4 gap> Size( P ); 4 gap> SetOfGeneratingMorphisms( P ); [ A morphism in the proset given by: [f]:(a) -≻ (b), A morphism in the proset given by: [g]:(b) -≻ (a) ]
‣ StableProsetOfCategory ( C ) | ( attribute ) |
‣ PosetOfCategory ( C ) | ( attribute ) |
gap> LoadPackage( "Locales", false ); true gap> q := FinQuiver( "q(a,b)[f:a->b,g:b->a]" ); FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) gap> F := PathCategory( q ); PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) gap> C := F / [ [ F.fg, F.id_a ], [ F.gf, F.id_b ] ]; PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] gap> P := PosetOfCategory( C ); PosetOfCategory( PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] ) gap> Display( P ); A CAP category with name PosetOfCategory( PathCategory( FinQuiver( "q(a,b)[f:a-≻b,g:b-≻a]" ) ) / [ f⋅g = id(a), g⋅f = id(b) ] ): 9 primitive operations were used to derive 78 operations for this category which algorithmically * IsCategoryWithDecidableColifts * IsCategoryWithDecidableLifts * IsFiniteCategory * IsPosetCategory * IsEquippedWithHomomorphismStructure gap> SetOfObjects( P ); [ An object in the poset given by: (a) ] gap> P.a = P.b; true gap> Length( SetOfMorphisms( P ) ); 1 gap> Size( P ); 1 gap> SetOfGeneratingMorphisms( P ); [ ]
‣ StablePosetOfCategory ( C ) | ( attribute ) |
‣ AmbientCategory ( P ) | ( attribute ) |
Returns: a list
The ambient category of the proset P.
‣ UnderlyingObject ( obj ) | ( attribute ) |
Returns: a CAP category object
The object in the ambient category underlying obj.
‣ UnderlyingMorphism ( mor ) | ( attribute ) |
Returns: a CAP category morphism
The morphism in the ambient category underlying mor.
gap> LoadPackage( "FreydCategoriesForCAP" ); true gap> LoadPackage( "SubcategoriesForCAP", ">= 2020.04.16" ); true gap> LoadPackage( "LazyCategories", ">= 2020.05.01" ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x,y"]; Q[x,y] gap> K := HomalgMatrix( "[ x, -x ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> J := HomalgMatrix( "[ x, y ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> I := KroneckerMat( K, J ); <An unevaluated 4 x 1 matrix over an external ring> gap> P := CategoryOfRows( R ); Rows( Q[x,y] ) gap> P := LazyCategory( P : show_evaluation := false ); LazyCategory( Rows( Q[x,y] ) ) gap> I := I / P; SetLabel( I, "I" ); SetLabel( Source( I ), "R^i" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> R := Target( I ); SetLabel( R, "R" ); <An evaluated object in LazyCategory( Rows( Q[x,y] ) )> gap> J := J / P; SetLabel( J, "J" ); SetLabel( Source( J ), "R^j" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K := K / P; <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> S := SliceCategoryOverTensorUnit( P ); SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) gap> L := PosetOfCategory( S ); PosetOfCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) gap> I := I / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> J := J / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K := K / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> IqJ := InternalHom( J, I ); ## this is the ideal quotient I : J An object in the poset given by: An object in the slice category given by: <A morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K = IqJ; true
gap> LoadPackage( "FreydCategoriesForCAP" ); true gap> LoadPackage( "SubcategoriesForCAP", ">= 2020.04.16" ); true gap> LoadPackage( "LazyCategories", ">= 2020.05.01" ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x,y"]; Q[x,y] gap> K := HomalgMatrix( "[ x, -x ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> J := HomalgMatrix( "[ x, y ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> I := KroneckerMat( K, J ); <An unevaluated 4 x 1 matrix over an external ring> gap> P := CategoryOfRows( R ); Rows( Q[x,y] ) gap> P := LazyCategory( P : primitive_operations := true, show_evaluation := false ); LazyCategory( Rows( Q[x,y] ) ) gap> I := I / P; SetLabel( I, "I" ); SetLabel( Source( I ), "R^i" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> R := Target( I ); SetLabel( R, "R" ); <An evaluated object in LazyCategory( Rows( Q[x,y] ) )> gap> J := J / P; SetLabel( J, "J" ); SetLabel( Source( J ), "R^j" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K := K / P; <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> S := SliceCategoryOverTensorUnit( P ); SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) gap> L := PosetOfCategory( S ); PosetOfCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) gap> I := I / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> J := J / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K := K / S / L; An object in the poset given by: An object in the slice category given by: <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> IqJ := InternalHom( J, I ); ## this is the ideal quotient I : J An object in the poset given by: An object in the slice category given by: <A morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K = IqJ; true
gap> LoadPackage( "FreydCategoriesForCAP" ); true gap> LoadPackage( "SubcategoriesForCAP", ">= 2020.04.16" ); true gap> LoadPackage( "LazyCategories", ">= 2020.06.01" ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x,y"]; Q[x,y] gap> K := HomalgMatrix( "[ x, -x ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> J := HomalgMatrix( "[ x, y ]", 2, 1, R ); <A 2 x 1 matrix over an external ring> gap> I := KroneckerMat( K, J ); <An unevaluated 4 x 1 matrix over an external ring> gap> P := CategoryOfRows( R ); Rows( Q[x,y] ) gap> P := LazyCategory( P : show_evaluation := false ); LazyCategory( Rows( Q[x,y] ) ) gap> I := I / P; SetLabel( I, "I" ); SetLabel( Source( I ), "R^i" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> R := Target( I ); SetLabel( R, "R" ); <An evaluated object in LazyCategory( Rows( Q[x,y] ) )> gap> J := J / P; SetLabel( J, "J" ); SetLabel( Source( J ), "R^j" ); <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> K := K / P; <An evaluated morphism in LazyCategory( Rows( Q[x,y] ) )> gap> S := LazyCategory( SliceCategoryOverTensorUnit( P ) ); LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) gap> L := LazyCategory( PosetOfCategory( S ) ); LazyCategory( PosetOfCategory( LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) ) ) gap> I := I / S; SetLabel( I, "I" ); <An evaluated object in LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) )> gap> I := I / L; SetLabel( I, "I" ); <An evaluated object in LazyCategory( PosetOfCategory( LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) ) )> gap> J := J / S; SetLabel( J, "J" ); <An evaluated object in LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) )> gap> J := J / L; SetLabel( J, "J" ); <An evaluated object in LazyCategory( PosetOfCategory( LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) ) )> gap> K := K / S; SetLabel( K, "K" ); <An evaluated object in LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) )> gap> K := K / L; SetLabel( K, "K" ); <An evaluated object in LazyCategory( PosetOfCategory( LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) ) )> gap> IqJ := InternalHom( J, I ); ## this is the ideal quotient I : J <An object in LazyCategory( PosetOfCategory( LazyCategory( SliceCategoryOverTensorUnit( LazyCategory( Rows( Q[x,y] ) ) ) ) ) )> gap> IsHomSetInhabited( K, IqJ ); true gap> IsHomSetInhabited( IqJ, K ); true
gap> LoadPackage( "SubcategoriesForCAP", ">= 2024.02-11", false ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x,y"]; Q[x,y] gap> F := CategoryOfRows( R ); Rows( Q[x,y] ) gap> S := SliceCategoryOverTensorUnit( F ); SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) gap> P := PosetOfCategory( S ); PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ) gap> Display( P ); A CAP category with name PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ): 17 primitive operations were used to derive 267 operations for this category which algorithmically * IsCategoryWithDecidableColifts * IsCategoryWithDecidableLifts * IsEquippedWithHomomorphismStructure * IsSymmetricClosedMonoidalLattice gap> I := HomalgMatrix( "[ x ]", 1, 1, R ) / F / S / P; An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> J := HomalgMatrix( "[ x, y ]", 2, 1, R ) / F / S / P; An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJ := TensorProduct( I, J ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IiJ := DirectProduct( I, J ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IiJ = I; true gap> IsHomSetInhabited( IJ, IiJ ); true gap> IsHomSetInhabited( IiJ, IJ ); false gap> IpJ := Coproduct( I, J ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IpJ = J; true gap> IJqJ := InternalHom( J, IJ ); ## this is the ideal quotient IJ : J An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJqJ = I; true gap> iota := InternalHom( UniversalMorphismIntoTerminalObject( J ), IJ ); <An epi-, monomorphism in PosetOfCategory( SliceCategoryOverTensorUnit( \ Rows( Q[x,y] ) ) )> gap> IsWellDefined( iota ); true gap> IsIsomorphism( iota ); false gap> IJJ := TensorProduct( IJ, J ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJqJ := InternalHom( J, IJJ ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJqJ = I; false gap> IJJsJ := StableInternalHom( J, IJJ ); An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJsJ = I; true
gap> LoadPackage( "SubcategoriesForCAP", ">= 2020.10-02" ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x"] / "x^2"; Q[x]/( x^2 ) gap> F := CategoryOfRows( R ); Rows( Q[x]/( x^2 ) ) gap> S := SliceCategoryOverTensorUnit( F ); SliceCategoryOverTensorUnit( Rows( Q[x]/( x^2 ) ) ) gap> P := PosetOfCategory( S ); PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x]/( x^2 ) ) ) ) gap> L := StablePosetOfCategory( P ); StablePosetOfCategory( PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x]/( x^2 ) ) ) ) ) gap> N := HomalgMatrix( "[ x ]", 1, 1, R ) / F / S / P; An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x]/( x^2 ) )> gap> I := InitialObject( P ); An object in the poset given by: An object in the slice category given by: <A zero, split monomorphism in Rows( Q[x]/( x^2 ) )> gap> I = N; false gap> IsInitial( I ); true gap> IsInitial( N ); false gap> rN := N / L; An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x]/( x^2 ) )> gap> rI := I / L; An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A zero, split monomorphism in Rows( Q[x]/( x^2 ) )> gap> rI = rN; true gap> IsInitial( rI ); true gap> IsInitial( rN ); true
gap> LoadPackage( "SubcategoriesForCAP", ">= 2024.02-11", false ); true gap> Q := HomalgFieldOfRationalsInSingular( ); Q gap> R := Q["x,y"]; Q[x,y] gap> F := CategoryOfRows( R ); Rows( Q[x,y] ) gap> S := SliceCategoryOverTensorUnit( F ); SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) gap> P := PosetOfCategory( S ); PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ) gap> Display( P ); A CAP category with name PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ): 17 primitive operations were used to derive 267 operations for this category which algorithmically * IsCategoryWithDecidableColifts * IsCategoryWithDecidableLifts * IsEquippedWithHomomorphismStructure * IsSymmetricClosedMonoidalLattice gap> L := StablePosetOfCategory( P ); StablePosetOfCategory( PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ) ) gap> Display( L ); A CAP category with name StablePosetOfCategory( PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) ) ): 16 primitive operations were used to derive 329 operations for this category which algorithmically * IsCategoryWithDecidableColifts * IsCategoryWithDecidableLifts * IsEquippedWithHomomorphismStructure * IsHeytingAlgebra * IsSymmetricClosedMonoidalLattice and furthermore mathematically * IsStableProset gap> I := HomalgMatrix( "[ x ]", 1, 1, R ) / F / S / P / L; An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> J := HomalgMatrix( "[ x, y ]", 2, 1, R ) / F / S / P / L; An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJ := TensorProduct( I, J ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IiJ := DirectProduct( I, J ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IsHomSetInhabited( IJ, IiJ ); true gap> IsHomSetInhabited( IiJ, IJ ); true gap> IiJ = I; true gap> IpJ := Coproduct( I, J ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IpJ = J; true gap> IJqJ := InternalHom( J, IJ ); ## this is the ideal quotient IJ : J An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJqJ = I; true gap> iota := InternalHom( UniversalMorphismIntoTerminalObject( J ), IJ ); A morphism in the stable poset given by: <An epi-, monomorphism in PosetOfCategory( SliceCategoryOverTensorUnit( Rows( Q[x,y] ) ) )> gap> IsWellDefined( iota ); true gap> IsOne( iota ); true gap> IJJ := TensorProduct( IJ, J ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJqJ := InternalHom( J, IJJ ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJqJ = I; true gap> IJJsJ := StableInternalHom( J, IJJ ); An object in the stable poset given by: An object in the poset given by: An object in the slice category given by: <A morphism in Rows( Q[x,y] )> gap> IJJsJ = I; true
‣ IsProsetOrPosetOfCapCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of a proset or poset of a CAP category.
‣ IsCellInProsetOrPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of cells in a proset or poset of a CAP category.
‣ IsCellInStableProsetOrPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of cells in a stable proset or poset of a CAP category.
‣ IsObjectInProsetOrPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of objects in a proset or poset of a CAP category.
‣ IsProsetOfCapCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of a proset of a CAP category.
‣ IsCellInProsetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of cells in a proset of a CAP category.
‣ IsObjectInProsetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of objects in a proset of a CAP category.
‣ IsMorphismInProsetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of morphisms in a proset of a CAP category.
‣ IsPosetOfCapCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of a poset of a CAP category.
‣ IsCellInPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of cells in a poset of a CAP category.
‣ IsObjectInPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of objects in a poset of a CAP category.
‣ IsMorphismInPosetOfCategory ( arg ) | ( filter ) |
Returns: true
or false
The GAP category of morphisms in a poset of a CAP category.
generated by GAPDoc2HTML