3 Examples and Tests

3.1 Test functions

3.1-1 BraidedCartesianCategoriesTest

3.1-2 BraidedCocartesianCategoriesTest

3.1-3 CartesianCategoriesTest

3.1-4 CartesianClosedCategoriesTest

3.1-5 CocartesianCategoriesTest

3.1-6 CocartesianCoclosedCategoriesTest

3.1-7 CodistributiveCocartesianCategoriesTest

3.1-8 DistributiveCartesianCategoriesTest

3.1-1 BraidedCartesianCategoriesTest

3.1-2 BraidedCocartesianCategoriesTest

3.1-3 CartesianCategoriesTest

3.1-4 CartesianClosedCategoriesTest

3.1-5 CocartesianCategoriesTest

3.1-6 CocartesianCoclosedCategoriesTest

3.1-7 CodistributiveCocartesianCategoriesTest

3.1-8 DistributiveCartesianCategoriesTest

`‣ BraidedCartesianCategoriesTest` ( cat, a, b ) | ( function ) |

The arguments are

a CAP category cat

objects a, b

This function checks for every operation declared in BraidedCartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ BraidedCocartesianCategoriesTest` ( cat, a, b ) | ( function ) |

The arguments are

a CAP category cat

objects a, b

This function checks for every operation declared in BraidedCocartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ CartesianCategoriesTest` ( cat, a, b, c, alpha, beta ) | ( function ) |

The arguments are

a CAP category cat

objects a, b, c

a morphism \alpha: a \rightarrow b

a morphism \beta: c \rightarrow d

This function checks for every operation declared in CartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ CartesianClosedCategoriesTest` ( cat, a, b, c, d, alpha, beta, gamma, delta, epsilon, zeta ) | ( function ) |

The arguments are

a CAP category cat

objects a, b, c, d

a morphism \alpha: a \rightarrow b

a morphism \beta: c \rightarrow d

a morphism \gamma: a \times b \rightarrow 1

a morphism \delta: c \times d \rightarrow 1

a morphism \epsilon: 1 \rightarrow \mathrm{Hom}(a,b)

a morphism \zeta: 1 \rightarrow \mathrm{Hom}(c,d)

This function checks for every operation declared in CartesianClosedCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ CocartesianCategoriesTest` ( cat, a, b, c, alpha, beta ) | ( function ) |

The arguments are

a CAP category cat

objects a, b, c

a morphism \alpha: a \rightarrow b

a morphism \beta: c \rightarrow d

This function checks for every operation declared in CocartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ CocartesianCoclosedCategoriesTest` ( cat, a, b, c, d, alpha, beta, gamma, delta, epsilon, zeta ) | ( function ) |

The arguments are

a CAP category cat

objects a, b, c, d

a morphism \alpha: a \rightarrow b

a morphism \beta: c \rightarrow d

a morphism \gamma: 1 \rightarrow a \sqcup b

a morphism \delta: 1 \rightarrow c \sqcup d

a morphism \epsilon: \mathrm{coHom}(a,b) \rightarrow 1

a morphism \zeta: \mathrm{coHom}(c,d) \rightarrow 1

This function checks for every operation declared in CocartesianCoclosedCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ CodistributiveCocartesianCategoriesTest` ( cat, a, L ) | ( function ) |

The arguments are

a CAP category cat

an object a

a list L of objects

This function checks for every operation declared in CodistributiveCocartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

`‣ DistributiveCartesianCategoriesTest` ( cat, a, L ) | ( function ) |

The arguments are

a CAP category cat

an object a

a list L of objects

This function checks for every operation declared in DistributiveCartesianCategories.gd if it is computable in the CAP category cat. If yes, then the operation is executed with the parameters given above and compared to the equivalent computation in the opposite category of cat. Pass the options

`verbose := true`

to output more information.`only_primitive_operations := true`

, which is passed on to Opposite(), to only primitively install dual operations for primitively installed operations in cat. The advantage is, that more derivations might be tested. On the downside, this might test fewer dual_pre/postprocessor_funcs.

gap> LoadPackage( "CartesianCategories", false ); true gap> distributive := DummyCategory( rec( > list_of_operations_to_install := > DuplicateFreeList( Concatenation( > CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD.IsCartesianClosedCategory, > CAP_INTERNAL_CONSTRUCTIVE_CATEGORIES_RECORD.IsCocartesianCategory ) ), > properties := [ "IsBicartesianClosedCategory", "IsSkeletalCategory" ] ) );; gap> InfoOfInstalledOperationsOfCategory( distributive ); 21 primitive operations were used to derive 121 operations for this category \ which algorithmically * IsBicartesianClosedCategory and not yet algorithmically * IsDistributiveCategory and furthermore mathematically * IsSkeletalCategory

generated by GAPDoc2HTML