|
|
|
Linear, affine
and projective groups |
Linear, affine and projective groups
Let q=pr, where p is a prime, and let GF(q) be a finite
field with q elements. The general linear group GLk(q)
is the group of all regular k × k matrices over GF(q). It acts on
the k-dimensional vector space GF(q)k by the following
definition:
GLk(q) ×
GF(q)k→ GF(q)k
(A,v)↦ A⋅ v. |
Furthermore let AFFk(q) be the set {(A,b) | A∈
GLk(q), b∈ GF(q)k}. After defining a
composition
(A1,b1)(A2,b2) :=
(A1A2,b1+A1
b2) this group acts as the group of all affine mappings
on GF(q)k by the following definition:
AFFk(q) ×
GF(q)k→ GF(q)k
((A,b),v)↦ A⋅ v+b. |
The cycle indices of these two actions [2] can be computed by
INT zykelind_glkq(k,q,c) OP k,q,c;
INT zykelind_affkq(k,q,c) OP k,q,c;
In both cases k
and q
are INTEGER
objects, k
takes the dimension of the vector space,
q
the cardinality of the finite field. The result
c
is a POLYNOM object.
The cardinalities of GLk(q) and AFFk(q)
can be computed by
INT ordnung_glkq(k,q,c) OP k,q,c;
INT ordnung_affkq(k,q,c) OP k,q,c;
Again k
and q
are INTEGER objects,
k
takes the dimension of the vector space,
q
the cardinality of the finite field. The result
c
is an INTEGER object.
In [12] Kung gave a very
elegant formula to compute the number of matrices in
GLk(q) which commute with a block diagonal matrix
D(p,λ) associated to a monic, irreducible polynomial
p(x)∈ GF(q)[x] and a partition λ, which tells how many
companion matrices and hyper-companion matrices of p(x) occur in
D(p,λ). The function
INT kung_formel(d,lambda,q,c) OP d,lambda,q,c;
computes c
(an INTEGER object), which is the number of
matrices, which commute with D(p,λ), where d
is
the degree of the polynomial p(x) (an INTEGER object),
lambda
is the partition λ (a PARTITION object)
and q
is the cardinality of the finite field. This
formula can be used to determine the number of elements in the
conjugacy class of a matrix in GLk(q) given in a normal
form.
The function
INT number_of_irred_poly_of_degree(d,q,c) OP d,q,c;
computes c
(an INTEGER object) to be the number of
irreducible, monic polynomials of degree d
(an INTEGER
object) over a finite field with q
(an INTEGER object)
elements.
For the enumeration of classes of linear (n,k)-Codes over GF(q)
(see [8][6][5]) one has to compute the cycle
index of the projective group [2] PGL(k,q) :=
GF(q)*\\GLk(q) acting on the projective space
PG(k-1,q) := GF(q)*\\GF(q)k \ {0}.
This group action is given by
PGL(k,q) × PG(k-1,q)→
PG(k-1,q) |
(GF(q)*(A),GF(q)*(v))↦
GF(q)*(A⋅ v). |
The cycle index of this action can be computed by
INT zykelind_pglkq(k,q,c) OP k,q,c;
where k
and q
are INTEGER objects as
above, and c
is the computed cycle index a POLYNOM
object. In the case q=2 the cycle index of PGL(k,2) can be computed
by
zykelind_glkq(k,q,c);zykelind_dec_apply(c);
as well.
It is also possible to define linear and affine groups for
k-dimensional modules over residue-class-rings Zn :=
Z/nZ. At the moment the following two routines are
just working for square free INTEGERs n.
INT zykelind_glkzn(k,n,c) OP k,n,c;
INT zykelind_affkzn(k,n,c) OP k,n,c;
In both cases k
is the dimension of the module,
n
is the square free modulus (both are INTEGER
objects) and c
is the computed cycle index.
In the case k=1 Wei and Xu computed the cycle index of
AFF1(n) in [17]
for arbitrary n. This formula is implemented in
INT zykelind_aff1zn(n,c) OP k,n,c;
n
is the modulus (an INTEGER object) and
c
is the computed cycle index.
harald.fripertinger "at" uni-graz.at, May 26,
2011
|
|
|
|
|
Linear, affine
and projective groups |
|
|