# FiniteGroups¶

class sage.categories.finite_groups.FiniteGroups(base_category)

The category of finite (multiplicative) groups.

EXAMPLES:

sage: C = FiniteGroups(); C
Category of finite groups
sage: C.super_categories()
[Category of finite monoids, Category of groups]
sage: C.example()
General Linear Group of degree 2 over Finite Field of size 3


TESTS:

sage: TestSuite(C).run()

class ElementMethods
conjugacy_class()

Return the conjugacy class of self.

EXAMPLES:

sage: H = MatrixGroup([matrix(GF(5),2,[1,2, -1, 1]), matrix(GF(5),2, [1,1, 0,1])])
sage: h = H(matrix(GF(5),2,[1,2, -1, 1]))
sage: h.conjugacy_class()
Conjugacy class of [1 2]
[4 1] in Matrix group over Finite Field of size 5 with 2 generators (
[1 2]  [1 1]
[4 1], [0 1]
)

class FiniteGroups.ParentMethods
cardinality()

Returns the cardinality of self, as per EnumeratedSets.ParentMethods.cardinality().

This default implementation calls order() if available, and otherwise resorts to _cardinality_from_iterator(). This is for backward compatibility only. Finite groups should override this method instead of order().

EXAMPLES:

We need to use a finite group which uses this default implementation of cardinality:

sage: R.<x> = PolynomialRing(QQ)
sage: f = x^4 - 17*x^3 - 2*x + 1
sage: G = f.galois_group(pari_group=True); G
PARI group [24, -1, 5, "S4"] of degree 4
sage: G.cardinality.__module__
'sage.categories.finite_groups'
sage: G.cardinality()
24

cayley_graph_disabled(connecting_set=None)

AUTHORS:

• Bobby Moretti (2007-08-10)
• Robert Miller (2008-05-01): editing
conjugacy_class(g)

Return the conjugacy class of the element g.

This is a fall-back method for groups not defined over GAP.

EXAMPLES:

sage: W = WeylGroup(['C',6])
sage: c = W.conjugacy_class(W.an_element())
sage: type(c)
<class 'sage.groups.conjugacy_classes.ConjugacyClass_with_category'>

conjugacy_classes()

Return a list with all the conjugacy classes of the group.

This will eventually be a fall-back method for groups not defined over GAP. Right now just raises a NotImplementedError, until we include a non-GAP way of listing the conjugacy classes representatives.

EXAMPLES:

sage: from sage.groups.group import FiniteGroup
sage: G = FiniteGroup()
sage: G.conjugacy_classes()
Traceback (most recent call last):
...
NotImplementedError: Listing the conjugacy classes for
group <type 'sage.groups.group.FiniteGroup'> is not implemented

conjugacy_classes_representatives()

Return a list of the conjugacy classes representatives of the group.

EXAMPLES:

sage: G = SymmetricGroup(3)
sage: G.conjugacy_classes_representatives()
[(), (1,2), (1,2,3)]

monoid_generators()

Return monoid generators for self.

For finite groups, the group generators are also monoid generators. Hence, this default implementation calls group_generators().

EXAMPLES:

sage: A = AlternatingGroup(4)
sage: A.monoid_generators()
Family ((2,3,4), (1,2,3))

semigroup_generators()

Returns semigroup generators for self.

For finite groups, the group generators are also semigroup generators. Hence, this default implementation calls group_generators().

EXAMPLES:

sage: A = AlternatingGroup(4)
sage: A.semigroup_generators()
Family ((2,3,4), (1,2,3))

some_elements()

Return some elements of self.

EXAMPLES:

sage: A = AlternatingGroup(4)
sage: A.some_elements()
[(2,3,4), (1,2,3)]

FiniteGroups.example()

Return an example of finite group, as per Category.example().

EXAMPLES:

sage: G = FiniteGroups().example(); G
General Linear Group of degree 2 over Finite Field of size 3


Finite Fields

#### Next topic

Finite lattice posets