[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Recognition of *-Algebras

In this section we describe methods that facilitate structural examinations of *-algebras. All of the functions in this section require that the base ring of the given algebra is a finite field of odd order. The functions are implementations of the methods described in [BW11a, Sections 4.2 and 4.3].

Subsections

Recognition of Simple *-Algebras

If A is a simple *-algebra, then we constructively recognise A by finding an explicit inverse isomorphisms between A and the standard copy of the simple *-algebra which is isomorphic to A. The latter is the output of the function SimpleStarAlgebra with the appropriate input parameters.

RecogniseClassicalSSA(A) : AlgMat -> BoolElt, AlgMat, Map, Map
Given a matrix *-algebra A, this function first decides whether or not A is a simple *-algebra of classical type. If it is, the standard *-algebra, T, corresponding to A, a *-isomorphism from A to T, and its inverse from T to A are returned.
RecogniseExchangeSSA(A) : AlgMat -> BoolElt, AlgMat, Map, Map
Given a matrix *-algebra A, this function first decides whether or not A is a simple *-algebra of exchange type. If it is, the standard *-algebra, T, corresponding to A, a *-isomorphism from A to T, and its inverse from T to A are returned.

Example AlgInv_RecogniseClassicalSSA (H87E6)

We build a particular simple *-algebra of symplectic type and recognise it constructively.

> MA := MatrixAlgebra(GF(7), 4);
> F := MA![0,1,3,4,6,0,0,1,4,0,0,2,3,6,5,0];
> F;
[0 1 3 4]
[6 0 0 1]
[4 0 0 2]
[3 6 5 0]
> A := AdjointAlgebra([F]);
> isit, T, f, g := RecogniseClassicalSSA(A);
> isit;
true;
A quick check that f is, as claimed, a *-isomorphism.

> (A.1 + A.2)@f eq (A.1@f) + (A.2@f);
true
> (A.1 * A.2)@f eq (A.1@f) * (A.2@f);
true
> (A.2@Star(A))@f eq (A.2@f)@Star(T);
true

Recognition of Arbitrary *-Algebras

If A is an arbitrary *-algebra, then we constructively recognise A as follows:

(i)
Find a decomposition A=J direct-sum T, where J is the Jacobson radical of A and T is a *-invariant semisimple complement to J in A;

(ii)
Find a decomposition T=I1 direct-sum ... direct-sum It of T into minimal *-ideals; and

(iii)
For each j∈{1, ..., t} constructively recognise the simple *-algebra Ij.
RecogniseStarAlgebra(A) : AlgMat -> BoolElt
RecogniseStarAlgebra(A) : AlgGrp -> BoolElt
Constructively recognise the *-algebra A given as a matrix *-algebra or a group algebra.

There are several functions available that permit easy access to structural information about a *-algebra that has been constructively recognised. (In fact all of these functions also initiate a constructive recognition of the input *-algebra if the recognition has not already been carried out.) For all of the access functions A can be either a matrix *-algebra or a group algebra.

IsSimpleStarAlgebra(A) : AlgMat -> BoolElt
IsSimpleStarAlgebra(A) : AlgGrp -> BoolElt
Return true if and only if A is a simple *-algebra.
SimpleParameters(A) : AlgMat -> SeqEnum
SimpleParameters(A) : AlgGrp -> SeqEnum
Given a *-algebra A, this function returns the parameters that determine (up to *-isomorphism) the minimal *-ideals of the semisimple quotient A/J, where J is the Jacobson radical of A. The parameters are returned in the form of a sequence.
NormGroup(A) : AlgMat -> GrpMat
Given a *-algebra A, this function returns the group of unitary elements of A, namely the group consisting of all units in A satisfying the condition x^ * =x - 1. The function is based on methods described in [BW11a, Section 5].

Example AlgInv_Nonisomorphism1 (H87E7)

Our first example illustrates how the *-algebra machinery may be used to distinguish between group algebras over ( GF)(5) for the dihedral and quaternion groups of order 8. Those group algebras are isomorphic as algebras, but the example shows that they are nonisomorphic as *-algebras.

> K := GF(5);
> G1 := SmallGroup(8, 3);
> G2 := SmallGroup(8, 4);
> A1 := GroupAlgebraAsStarAlgebra(K, G1);
> A2 := GroupAlgebraAsStarAlgebra(K, G2);
> J1, T1 := TaftDecomposition(A1);
> J2, T2 := TaftDecomposition(A2);
> Dimension(J1); Dimension(J2);
0
0
Thus (as we know from Maschke's theorem) both ( GF)(5)[D8] and ( GF)(5)[Q8] are semisimple. We now recognise them as *-algebras and examine their minimal *-ideals.

> RecogniseStarAlgebra(A1);
true
> RecogniseStarAlgebra(A2);
true
> SimpleParameters(A1);
[ <"orthogonalcircle", 1, 5>, <"orthogonalcircle", 1, 5>,
<"orthogonalcircle", 1, 5>, <"orthogonalcircle", 1, 5>, 
<"orthogonalplus", 2, 5> ]
> SimpleParameters(A2);
[ <"orthogonalcircle", 1, 5>, <"orthogonalcircle", 1, 5>,
<"orthogonalcircle", 1, 5>, <"orthogonalcircle", 1, 5>, 
<"symplectic", 2, 5>
]
Both group algebras decompose into four 1-dimensional *-ideals, and one 4-dimensional *-ideal. However, the latter has type "orthogonalplus" for ( GF)(5)[D8], but type "symplectic" for ( GF)(5)[Q8].

Example AlgInv_Nonisomorphism2 (H87E8)

Our second example shows how to use *-algebra functions to distinguish between two p-groups of class 2 and order 436. The first group is a Sylow 43-subgroup of ( GL)(3, 432).

> P1 := ClassicalSylow(GL(3, 43^2), 43);
> Forms1 := PGroupToForms(P1);
> A1 := AdjointAlgebra(Forms1);
> RecogniseStarAlgebra(A1);
true
> SimpleParameters(A1);
[ <"symplectic", 2, 1849> ]
The second group is constructed as a subgroup of ( GL)(3, ( GF)(43)[x]/(x2)).

> R<x> := PolynomialRing(GF(43));
> S, f := quo< R | x^2 >;
> G := GL(3, S);
> Ua := G![1,1,0,0,1,0,0,0,1];
> Wa := G![1,0,0,0,1,1,0,0,1];
> Ub := G![1,x@f,0,0,1,0,0,0,1];
> Wb := G![1,0,0,0,1,x@f,0,0,1];
> P2 := sub< G | [ Ua, Wa, Ub, Wb ] >;
> Forms2 := PGroupToForms(P2);
> A2 := AdjointAlgebra(Forms2);
> RecogniseStarAlgebra(A2);
true
> SimpleParameters(A2);
[ <"symplectic", 2, 43> ]
Since A1 and A2 are non-isomorphic *-algebras, it follows that P1 and P2 are non-isomorphic groups.
 [Next][Prev] [Right] [Left] [Up] [Index] [Root]

Version: V2.19 of Mon Dec 17 14:40:36 EST 2012