‣ SET_RANGE_CATEGORY_Of_HOMOMORPHISM_STRUCTURE( C, H ) | ( operation ) |
The input are two categories C and H. There is not output but the following side effects are applied to C:
SetRangeCategoryOfHomomorphismStructure( C, H )
SetIsEquippedWithHomomorphismStructure( C, true )
Furthermore, if IsCategoryWithDecidableLifts( H ) then
SetIsCategoryWithDecidableLifts( C, true )
SetIsCategoryWithDecidableColifts( C, true )
An error is raised if RangeCategoryOfHomomorphismStructure( C ) is already set.
‣ ListKnownDoctrines( arg ) | ( function ) |
Returns: a list
The function takes no arguments and returns the list of known doctrines.
gap> LoadPackage( "FunctorCategories", false ); true gap> ListKnownDoctrines( ); [ "IsCapCategory", "IsEnrichedOverCommutativeRegularSemigroup", "IsAbCategory", "IsCategoryWithTerminalObject", "IsCartesianCategory", "IsCategoryWithInitialObject", "IsCocartesianCategory", "IsBicartesianCategory", "IsCategoryWithZeroObject", "IsAdditiveCategory", "IsCategoryWithCoequalizers", "IsCategoryWithCokernels", "IsCategoryWithEqualizers", "IsCategoryWithKernels", "IsFiniteCocompleteCategory", "IsFiniteCompleteCategory", "IsFiniteBicompleteCategory", "IsPreAbelianCategory", "IsAbelianCategory", "IsAbelianCategoryWithEnoughInjectives", "IsAbelianCategoryWithEnoughProjectives", "IsMonoidalCategory", "IsAdditiveMonoidalCategory", "IsCartesianClosedCategory", "IsDistributiveCategory", "IsBicartesianClosedCategory", "IsCocartesianCoclosedCategory", "IsCodistributiveCategory", "IsBicartesianCoclosedCategory", "IsThinCategory", "IsCartesianProset", "IsCocartesianProset", "IsBicartesianProset", "IsDistributiveBicartesianProset", "IsCoHeytingAlgebroid", "IsHeytingAlgebroid", "IsBiHeytingAlgebroid", "IsPosetCategory", "IsJoinSemiLattice", "IsMeetSemiLattice", "IsLattice", "IsDistributiveLattice", "IsCoHeytingAlgebra", "IsHeytingAlgebra", "IsBiHeytingAlgebra", "IsBooleanAlgebroid", "IsBooleanAlgebra", "IsSymmetricMonoidalCategory", "IsCategoryWithDecidableColifts", "IsCategoryWithDecidableLifts", "IsClosedMonoidalCategory", "IsMonoidalProset", "IsClosedMonoidalProset", "IsMonoidalPoset", "IsClosedMonoidalPoset", "IsMonoidalLattice", "IsClosedMonoidalLattice", "IsCoclosedMonoidalCategory", "IsCoclosedMonoidalProset", "IsCoclosedMonoidalPoset", "IsCoclosedMonoidalLattice", "IsElementaryTopos", "IsEquippedWithHomomorphismStructure", "IsObjectFiniteCategory", "IsFinitelyPresentedCategory", "IsFiniteCategory", "IsLeftClosedMonoidalCategory", "IsLeftCoclosedMonoidalCategory", "IsLinearCategoryOverCommutativeRing", "IsLinearCategoryOverCommutativeRingWithFinitelyGeneratedFreeExternalHoms", "IsSymmetricClosedMonoidalCategory", "IsRigidSymmetricClosedMonoidalCategory", "IsSymmetricCoclosedMonoidalCategory", "IsRigidSymmetricCoclosedMonoidalCategory", "IsSymmetricMonoidalProset", "IsSymmetricClosedMonoidalProset", "IsSymmetricMonoidalPoset", "IsSymmetricClosedMonoidalPoset", "IsSymmetricMonoidalLattice", "IsSymmetricClosedMonoidalLattice", "IsSymmetricCoclosedMonoidalProset", "IsSymmetricCoclosedMonoidalPoset", "IsSymmetricCoclosedMonoidalLattice" ] gap> # @drop_example_in_Julia
‣ DummyCategoryInDoctrines( doctrine_names ) | ( operation ) |
Returns: a CAP category
The argument is a nonempty list doctrine_names of strings of doctrine names and the output is a dummy category created using DummyCategory which lies in the given doctrine. If the option minimal is set to true, then only a logically minimal subset of the doctrines is considered.
gap> LoadPackage( "ToolsForCategoricalTowers", false ); true gap> D1 := DummyCategoryInDoctrines( [ "IsAbCategory" ] ); DummyCategoryInDoctrines( [ "IsAbCategory" ] ) gap> Display( D1 ); A CAP category with name DummyCategoryInDoctrines( [ "IsAbCategory" ] ): 16 primitive operations were used to derive 28 operations for this category \ which algorithmically * IsAbCategory gap> D2 := DummyCategoryInDoctrines( [ "IsAbCategory", "IsAbelianCategory" ] ); DummyCategoryInDoctrines( [ "IsAbelianCategory" ] ) gap> Display( D2 ); A CAP category with name DummyCategoryInDoctrines( [ "IsAbelianCategory" ] ): 33 primitive operations were used to derive 291 operations for this category \ which algorithmically * IsAbelianCategory gap> D3 := DummyCategoryInDoctrines( > [ "IsCategoryWithInitialObject", > "IsCategoryWithTerminalObject", > "IsCategoryWithZeroObject" ] ); DummyCategoryInDoctrines( \ [ "IsCategoryWithInitialObject", "IsCategoryWithTerminalObject", "IsCategoryWithZeroObject" ] ) gap> Display( D3 ); A CAP category with name DummyCategoryInDoctrines( \ [ "IsCategoryWithInitialObject", "IsCategoryWithTerminalObject", "IsCategoryWithZeroObject" ] ): 18 primitive operations were used to derive 41 operations for this category which algorithmically * IsCategoryWithZeroObject gap> D4 := DummyCategoryInDoctrines( > [ "IsCategoryWithInitialObject", > "IsCategoryWithTerminalObject", > "IsCategoryWithZeroObject" ] : minimal := true ); DummyCategoryInDoctrines( [ "IsCategoryWithZeroObject" ] ) gap> Display( D4 ); A CAP category with name DummyCategoryInDoctrines( \ [ "IsCategoryWithZeroObject" ] ): 14 primitive operations were used to derive 41 operations for this category \ which algorithmically * IsCategoryWithZeroObject
‣ CovariantHomFunctor( o ) | ( attribute ) |
Returns: a CAP functor
The input is an object o in a category C. The output is the covariant Hom functor \mathrm{Hom}(o,-) from the category C to RangeCategoryOfHomomorphismStructure( C ).
‣ GlobalSectionFunctor( C ) | ( attribute ) |
Returns: a CAP functor
Returns the global section functor \mathrm{Hom}(1,-) from the category C with terminal object 1 to RangeCategoryOfHomomorphismStructure( C ).
‣ DatumOfCellAsEvaluatableString( c, list_of_evaluatable_strings ) | ( operation ) |
Returns: a string
The arguments is a category cell c and a list list_of_evaluatable_strings of string all which must be evalutable with EvalString. The output is a string str such that
EvalString( str ) = ObjectDatum( c ) if c is a category object, or
EvalString( str ) = MorphismDatum( c ) if c is a category morphism.
The output string must, apart from the brackets, only consist of the substrings "ObjectConstructor", "MorphismConstructor" and the string in list_of_evaluatable_strings.
‣ CellAsEvaluatableString( c, list_of_evaluatable_strings ) | ( operation ) |
Returns: a string
The arguments is a category cell c and a list list_of_evaluatable_strings of string all which must be evalutable with EvalString. The output is a string str such that
IsEqualForObjects( EvalString( str ), c ) if c is a category object, or
IsEqualForMorphismsOnMor( EvalString( str ), c ) if c is a category morphism.
The output string must, apart from the brackets, only consist of the substrings "ObjectConstructor", "MorphismConstructor" and the string in list_of_evaluatable_strings.
generated by GAPDoc2HTML