Finite groups#

class sage.categories.finite_groups.FiniteGroups(base_category)#

Bases: CategoryWithAxiom_singleton

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
class Algebras(category, *args)#

Bases: AlgebrasCategory

class ParentMethods#

Bases: object

extra_super_categories()#

Implement Maschke’s theorem.

In characteristic 0 all finite group algebras are semisimple.

EXAMPLES:

sage: FiniteGroups().Algebras(QQ).is_subcategory(Algebras(QQ).Semisimple())
True
sage: FiniteGroups().Algebras(FiniteField(7)).is_subcategory(Algebras(FiniteField(7)).Semisimple())
False
sage: FiniteGroups().Algebras(ZZ).is_subcategory(Algebras(ZZ).Semisimple())
False
sage: FiniteGroups().Algebras(Fields()).is_subcategory(Algebras(Fields()).Semisimple())
False

sage: Cat = CommutativeAdditiveGroups().Finite()
sage: Cat.Algebras(QQ).is_subcategory(Algebras(QQ).Semisimple())
True
sage: Cat.Algebras(GF(7)).is_subcategory(Algebras(GF(7)).Semisimple())
False
sage: Cat.Algebras(ZZ).is_subcategory(Algebras(ZZ).Semisimple())
False
sage: Cat.Algebras(Fields()).is_subcategory(Algebras(Fields()).Semisimple())
False
class ElementMethods#

Bases: object

class ParentMethods#

Bases: object

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: G = groups.misc.SemimonomialTransformation(GF(5), 3); G
Semimonomial transformation group over Finite Field of size 5 of degree 3
sage: G.cardinality.__module__
'sage.categories.finite_groups'
sage: G.cardinality()
384
cayley_graph_disabled(connecting_set=None)#

AUTHORS:

  • Bobby Moretti (2007-08-10)

  • Robert Miller (2008-05-01): editing

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, it 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 <sage.groups.group.FiniteGroup object at ...> 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()
Family ((2,3,4), (1,2,3))
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