GAP (CAP) - Chapter 4: Objects

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax off]

4 Objects
4.1 Attributes for the Type of Objects
4.1-1 CapCategory
4.2 Equality for Objects
4.2-1 IsEqualForObjects
4.2-2 AddIsEqualForObjects
4.3 Categorical Properties of Objects
4.3-1 AddIsProjective
4.3-2 AddIsInjective
4.3-3 AddIsTerminal
4.3-4 AddIsInitial
4.3-5 IsZeroForObjects
4.3-6 AddIsZeroForObjects
4.4 Tool functions for caches
4.4-1 IsEqualForCacheForObjects
4.4-2 AddIsEqualForCacheForObjects
4.5 Well-Definedness of Objects
4.5-1 IsWellDefinedForObjects
4.5-2 AddIsWellDefinedForObjects

### 4 Objects

Any GAP object which is IsCapCategoryObject can be added to a category and then becomes an object in this category. Any object can belong to one or no category. After a GAP object is added to the category, it knows which things can be computed in its category and to which category it belongs. It knows categorial properties and attributes, and the functions for existential quantifiers can be applied to the object.

#### 4.1 Attributes for the Type of Objects

##### 4.1-1 CapCategory

`‣ CapCategory`( a ) | ( attribute )

Returns: a category

The argument is an object \(a\). The output is the category \(\mathbf{C}\) to which \(a\) was added.

#### 4.2 Equality for Objects

##### 4.2-1 IsEqualForObjects

`‣ IsEqualForObjects`( a, b ) | ( operation )

Returns: a boolean

The arguments are two objects \(a\) and \(b\). The output is `true` if \(a = b\), otherwise the output is `false`.

##### 4.2-2 AddIsEqualForObjects

`‣ AddIsEqualForObjects`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsEqualForObjects`. \(F: (a,b) \mapsto \mathtt{IsEqualForObjects}(a,b)\).

#### 4.3 Categorical Properties of Objects

##### 4.3-1 AddIsProjective

`‣ AddIsProjective`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsProjective`. \(F: a \mapsto \mathtt{IsProjective}(a)\).

##### 4.3-2 AddIsInjective

`‣ AddIsInjective`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsInjective`. \(F: a \mapsto \mathtt{IsInjective}(a)\).

##### 4.3-3 AddIsTerminal

`‣ AddIsTerminal`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsTerminal`. \(F: a \mapsto \mathtt{IsTerminal}(a)\).

##### 4.3-4 AddIsInitial

`‣ AddIsInitial`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsInitial`. \(F: a \mapsto \mathtt{IsInitial}(a)\).

##### 4.3-5 IsZeroForObjects

`‣ IsZeroForObjects`( a ) | ( operation )

Returns: a boolean

The argument is an object \(a\) of a category \(\mathbf{C}\). The output is `true` if \(a\) is isomorphic to the zero object of \(\mathbf{C}\), otherwise the output is `false`.

##### 4.3-6 AddIsZeroForObjects

`‣ AddIsZeroForObjects`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsZeroForObjects`. \(F: a \mapsto \mathtt{IsZeroForObjects}(a)\).

#### 4.4 Tool functions for caches

##### 4.4-1 IsEqualForCacheForObjects

`‣ IsEqualForCacheForObjects`( phi, psi ) | ( operation )

Returns: true or false

Compares two objects in the cache

##### 4.4-2 AddIsEqualForCacheForObjects

`‣ AddIsEqualForCacheForObjects`( c, F ) | ( operation )

Returns: northing

By default, CAP uses caches to store the values of Categorical operations. To get a value out of the cache, one needs to compare the input of a basic operation with its previous input. To compare objects in the category, IsEqualForCacheForObject is used. By default this is an alias for IsEqualForObjects, where fail is substituted by false. If you add a function, this function used instead. A function \(F: a,b \mapsto bool\) is expected here. The output has to be true or false. Fail is not allowed in this context.

#### 4.5 Well-Definedness of Objects

##### 4.5-1 IsWellDefinedForObjects

`‣ IsWellDefinedForObjects`( a ) | ( operation )

Returns: a boolean

The argument is an object \(a\). The output is `true` if \(a\) is well-defined, otherwise the output is `false`.

##### 4.5-2 AddIsWellDefinedForObjects

`‣ AddIsWellDefinedForObjects`( C, F ) | ( operation )

Returns: nothing

The arguments are a category \(C\) and a function \(F\). This operations adds the given function \(F\) to the category for the basic operation `IsWellDefinedForObjects`. \(F: a \mapsto \mathtt{IsWellDefinedForObjects}( a )\).

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 Ind

generated by GAPDoc2HTML