‣ IsHomalgRing ( R ) | ( category ) |
Returns: true
or false
The GAP category of homalg rings.
(It is a subcategory of the GAP categories IsStructureObject
and IsHomalgRingOrModule
.)
DeclareCategory( "IsHomalgRing", IsStructureObject and IsRingWithOne and IsHomalgRingOrModule );
‣ IsPreHomalgRing ( R ) | ( category ) |
Returns: true
or false
The GAP category of pre homalg rings.
(It is a subcategory of the GAP category IsHomalgRing
.)
These are rings with an incomplete homalgTable
. They provide flexibility for developers to support a wider class of rings, as was necessary for the development of the LocalizeRingForHomalg package. They are not suited for direct usage.
DeclareCategory( "IsPreHomalgRing", IsHomalgRing );
‣ IsHomalgRingElement ( r ) | ( category ) |
Returns: true
or false
The GAP category of elements of homalg rings which are not GAP4 built-in.
DeclareCategory( "IsHomalgRingElement", IsExtAElement and IsExtLElement and IsExtRElement and IsAdditiveElementWithInverse and IsMultiplicativeElementWithInverse and IsAssociativeElement and IsAdditivelyCommutativeElement and ## all the above guarantees IsHomalgRingElement => IsRingElement (in GAP4) IsAttributeStoringRep );
‣ IsHomalgInternalRingRep ( R ) | ( representation ) |
Returns: true
or false
The internal representation of homalg rings.
(It is a representation of the GAP category IsHomalgRing
.)
This section describes how to construct rings for use with MatricesForHomalg, which exploit the GAP4-built-in abilities to perform the necessary ring operations. By this we also mean necessary matrix operations over such rings. For the purposes of MatricesForHomalg only the ring of integers is properly supported in GAP4. The GAP4 extension packages Gauss and GaussForHomalg extend these built-in abilities to operations with sparse matrices over the ring \(ℤ / p^n\) for \(p\) prime and \(n\) positive.
If a ring \(R\) is supported in MatricesForHomalg any of its residue class rings \(R/I\) is supported as well, provided the ideal \(I\) of relations admits a finite set of generators as a left resp. right ideal (--> \/
(3.2-3)). This is immediate for commutative noetherian rings.
‣ HomalgRingOfIntegers ( ) | ( function ) |
Returns: a homalg ring
‣ HomalgRingOfIntegers ( c ) | ( function ) |
Returns: a homalg ring
The no-argument form returns the ring of integers \(ℤ\) for homalg.
The one-argument form accepts an integer c and returns the ring \(ℤ / c \) for homalg:
c\( = 0\) defaults to \(ℤ\)
if c is a prime power then the package GaussForHomalg is loaded (if it fails to load an error is issued)
otherwise, the residue class ring constructor /
(--> \/
(3.2-3)) is invoked
The operation SetRingProperties
is automatically invoked to set the ring properties.
If for some reason you don't want to use the GaussForHomalg package (maybe because you didn't install it), then use
HomalgRingOfIntegers
( ) /
c;
but note that the computations will then be considerably slower.
‣ HomalgFieldOfRationals ( ) | ( function ) |
Returns: a homalg ring
The package GaussForHomalg is loaded and the field of rationals \(ℚ\) is returned. If GaussForHomalg fails to load an error is issued.
The operation SetRingProperties
is automatically invoked to set the ring properties.
3.2-3 \/
‣ \/ ( R, ring_rel ) | ( operation ) |
Returns: a homalg ring
This is the homalg constructor for residue class rings R \(/ I\), where R is a homalg ring and \(I=\)ring_rel is the ideal of relations generated by ring_rel. ring_rel might be:
a set of ring relations of a left resp. right ideal
a list of ring elements of R
a ring element of R
For noncommutative rings: In the first case the set of ring relations should generate the ideal of relations \(I\) as left resp. right ideal, and their involutions should generate \(I\) as right resp. left ideal. If ring_rel is not a set of relations, a left set of relations is constructed.
The operation SetRingProperties
is automatically invoked to set the ring properties.
gap> ZZ := HomalgRingOfIntegers( ); Z gap> Display( ZZ ); <An internal ring> gap> Z256 := ZZ / 2^8; Z/( 256 ) gap> Display( Z256 ); <A residue class ring> gap> Z2 := Z256 / 6; Z/( 256, 6 ) gap> BasisOfRows( MatrixOfRelations( Z2 ) ); <An unevaluated non-zero 1 x 1 matrix over an internal ring> gap> Z2; Z/( 2 ) gap> Display( Z2 ); <A residue class ring>
The following properties are declared for homalg rings. Note that (apart from so-called true and immediate methods (--> C.1)) there are no methods installed for ring properties. This means that if the value of the ring property Prop
is not set for a homalg ring R, then
Prop
( R );
will cause an error. One can use the usual GAP4 mechanism to check if the value of the property is set or not
HasProp
( R );
If you discover that a specific property Prop
is missing for a certain homalg ring R you can it add using the usual GAP4 mechanism
SetProp
( R, true );
or
SetProp
( R, false );
Be very cautious with setting "missing" properties to homalg objects: If the value you set is mathematically wrong homalg will probably draw wrong conclusions and might return wrong results.
‣ IsZero ( R ) | ( property ) |
Returns: true
or false
Check if the ring R is a zero, i.e., if One
\((\)R\()=\)Zero
\((\)R\()\).
‣ ContainsAField ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRationalsForHomalg ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsFieldForHomalg ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsDivisionRingForHomalg ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsIntegersForHomalg ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsResidueClassRingOfTheIntegers ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsBezoutRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsIntegrallyClosedDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsUniqueFactorizationDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsKaplanskyHermite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsDedekindDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsDiscreteValuationRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsFreePolynomialRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsWeylRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLocalizedWeylRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsGlobalDimensionFinite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftGlobalDimensionFinite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightGlobalDimensionFinite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ HasInvariantBasisProperty ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ HasLeftInvariantBasisProperty ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ HasRightInvariantBasisProperty ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLocal ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsSemiLocalRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsIntegralDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsHereditary ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftHereditary ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightHereditary ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsHermite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftHermite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightHermite ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsNoetherian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftNoetherian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightNoetherian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsCohenMacaulay ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsGorenstein ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsKoszul ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsArtinian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftArtinian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightArtinian ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsOreDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftOreDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightOreDomain ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsPrincipalIdealRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftPrincipalIdealRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightPrincipalIdealRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRegular ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsFiniteFreePresentationRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsLeftFiniteFreePresentationRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsRightFiniteFreePresentationRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsSimpleRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsSemiSimpleRing ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsSuperCommutative ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ BasisAlgorithmRespectsPrincipalIdeals ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ AreUnitsCentral ( R ) | ( property ) |
Returns: true
or false
R is a ring for homalg.
‣ IsMinusOne ( r ) | ( property ) |
Returns: true
or false
Check if the ring element r is the additive inverse of one.
‣ IsMonic ( r ) | ( property ) |
Returns: true
or false
Check if the homalg ring element r is monic.
‣ IsMonicUptoUnit ( r ) | ( property ) |
Returns: true
or false
Check if leading coefficient of the homalg ring element r is a unit.
‣ IsLeftRegular ( r ) | ( property ) |
Returns: true
or false
Check if the homalg ring element r is left regular.
‣ IsRightRegular ( r ) | ( property ) |
Returns: true
or false
Check if the homalg ring element r is right regular.
‣ IsRegular ( r ) | ( property ) |
Returns: true
or false
Check if the homalg ring element r is regular, i.e. left and right regular.
‣ Inverse ( r ) | ( attribute ) |
Returns: a homalg ring element or fail
The inverse of the homalg ring element r.
gap> ZZ := HomalgRingOfIntegers( );; gap> R := ZZ / 2^8; Z/( 256 ) gap> r := (1/3*One(R)+1/5)+3/7; |[ 157 ]| gap> 1 / r; ## = r^-1; |[ 181 ]| gap> s := (1/3*One(R)+2/5)+3/7; |[ 106 ]| gap> 1 / s; fail
‣ homalgTable ( R ) | ( attribute ) |
Returns: a homalg table
The homalg table of R is a ring dictionary, i.e. the translator between homalg and the (specific implementation of the) ring.
Every homalg ring has a homalg table.
‣ RingElementConstructor ( R ) | ( attribute ) |
Returns: a function
The constructor of ring elements in the homalg ring R.
‣ TypeOfHomalgMatrix ( R ) | ( attribute ) |
Returns: a type
The GAP4-type of homalg matrices over the homalg ring R.
‣ ConstructorForHomalgMatrices ( R ) | ( attribute ) |
Returns: a type
The constructor for homalg matrices over the homalg ring R.
‣ Zero ( R ) | ( attribute ) |
Returns: a homalg ring element
The zero of the homalg ring R.
‣ One ( R ) | ( attribute ) |
Returns: a homalg ring element
The one of the homalg ring R.
‣ MinusOne ( R ) | ( attribute ) |
Returns: a homalg ring element
The minus one of the homalg ring R.
‣ ProductOfIndeterminates ( R ) | ( attribute ) |
Returns: a homalg ring element
The product of indeterminates of the homalg ring R.
‣ RationalParameters ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of rational parameters of the homalg ring R.
‣ IndeterminatesOfPolynomialRing ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of indeterminates of the homalg polynomial ring R.
‣ RelativeIndeterminatesOfPolynomialRing ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of relative indeterminates of the homalg polynomial ring R.
‣ IndeterminateCoordinatesOfRingOfDerivations ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of indeterminate coordinates of the homalg Weyl ring R.
‣ RelativeIndeterminateCoordinatesOfRingOfDerivations ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of relative indeterminate coordinates of the homalg Weyl ring R.
‣ IndeterminateDerivationsOfRingOfDerivations ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of indeterminate derivations of the homalg Weyl ring R.
‣ RelativeIndeterminateDerivationsOfRingOfDerivations ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of relative indeterminate derivations of the homalg Weyl ring R.
‣ IndeterminateAntiCommutingVariablesOfExteriorRing ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of anti-commuting indeterminates of the homalg exterior ring R.
‣ RelativeIndeterminateAntiCommutingVariablesOfExteriorRing ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of anti-commuting relative indeterminates of the homalg exterior ring R.
‣ IndeterminatesOfExteriorRing ( R ) | ( attribute ) |
Returns: a list of homalg ring elements
The list of all indeterminates (commuting and anti-commuting) of the homalg exterior ring R.
‣ CoefficientsRing ( R ) | ( attribute ) |
Returns: a homalg ring
The ring of coefficients of the homalg ring R.
‣ KrullDimension ( R ) | ( attribute ) |
Returns: a non-negative integer
The Krull dimension of the commutative homalg ring R.
‣ LeftGlobalDimension ( R ) | ( attribute ) |
Returns: a non-negative integer
The left global dimension of the homalg ring R.
‣ RightGlobalDimension ( R ) | ( attribute ) |
Returns: a non-negative integer
The right global dimension of the homalg ring R.
‣ GlobalDimension ( R ) | ( attribute ) |
Returns: a non-negative integer
The global dimension of the homalg ring R. The global dimension is defined, only if the left and right global dimensions coincide.
‣ GeneralLinearRank ( R ) | ( attribute ) |
Returns: a non-negative integer
The general linear rank of the homalg ring R ([MR01], 11.1.14).
‣ ElementaryRank ( R ) | ( attribute ) |
Returns: a non-negative integer
The elementary rank of the homalg ring R ([MR01], 11.3.10).
‣ StableRank ( R ) | ( attribute ) |
Returns: a non-negative integer
The stable rank of the homalg ring R ([MR01], 11.3.4).
‣ AssociatedGradedRing ( R ) | ( attribute ) |
Returns: a homalg ring
The graded ring associated to the filtered ring R.
generated by GAPDoc2HTML