IsCanonicalBasis( B ) P
If the underlying free left module V of the basis B supports a
canonical basis (see CanonicalBasis) then IsCanonicalBasis returns
true if B is equal to the canonical basis of V,
and false otherwise.
IsIntegralBasis( B ) P
Let B be an S-basis of a field F, say,
and let R and M be the rings of algebraic integers in S and F,
respectively.
IsIntegralBasis returns true if B is also an R-basis of M,
and false otherwise.
IsNormalBasis( B ) P
Let B be an S-basis of a field F, say.
IsNormalBasis returns true if B is invariant under the Galois group
(see GaloisGroup.field) of the field extension F / S,
and false otherwise.
gap> B:= CanonicalBasis( GaussianRationals ); gap> IsIntegralBasis( B ); IsNormalBasis( B ); true false
StructureConstantsTable( B ) A
Let B be a basis of a free left module R, say, that is also a ring.
In this case StructureConstantsTable returns a structure constants
table T in sparse representation, as used for structure constants
algebras (see Section Algebras of the GAP User's Tutorial).
The coefficients w.r.t. B of the product of the i-th and j-th basis vector of B are stored in T[i][j] as a list of length 2; its first entry is the list of positions of nonzero coefficients, the second entry is the list of these coefficients themselves.
The multiplication in an algebra A with vector space basis B with basis vectors [ v1, ¼, vn ] is determined by the so-called structure matrices Mk = [ mijk ]ij, 1 £ k £ n. The Mk are defined by vi vj = åk mi,j,k vk. Let a = [ a1, ¼, an ] and b = [ b1, ¼, bn ]. Then
|
gap> A:= QuaternionAlgebra( Rationals );;
gap> StructureConstantsTable( Basis( A ) );
[ [ [ [ 1 ], [ 1 ] ], [ [ 2 ], [ 1 ] ], [ [ 3 ], [ 1 ] ], [ [ 4 ], [ 1 ] ] ],
[ [ [ 2 ], [ 1 ] ], [ [ 1 ], [ -1 ] ], [ [ 4 ], [ 1 ] ], [ [ 3 ], [ -1 ] ] ],
[ [ [ 3 ], [ 1 ] ], [ [ 4 ], [ -1 ] ], [ [ 1 ], [ -1 ] ], [ [ 2 ], [ 1 ] ] ],
[ [ [ 4 ], [ 1 ] ], [ [ 3 ], [ 1 ] ], [ [ 2 ], [ -1 ] ], [ [ 1 ], [ -1 ] ] ]
, 0, 0 ]
[Top] [Previous] [Up] [Next] [Index]
GAP 4 manual