Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
sagemath
GitHub Repository: sagemath/sagesmc
Path: blob/master/src/sage/groups/groups_catalog.py
8814 views
1
r"""
2
Examples of Groups
3
4
The ``groups`` object may be used to access examples of various groups.
5
Using tab-completion on this object is an easy way to discover and quickly
6
create the groups that are available (as listed here).
7
8
Let ``<tab>`` indicate pressing the tab key. So begin by typing
9
``groups.<tab>`` to the see primary divisions, followed by (for example)
10
``groups.matrix.<tab>`` to access various groups implemented as sets of matrices.
11
12
- Permutation Groups (``groups.permutation.<tab>``)
13
14
- :class:`groups.permutation.Symmetric <sage.groups.perm_gps.permgroup_named.SymmetricGroup>`
15
- :class:`groups.permutation.Alternating <sage.groups.perm_gps.permgroup_named.AlternatingGroup>`
16
- :class:`groups.permutation.KleinFour <sage.groups.perm_gps.permgroup_named.KleinFourGroup>`
17
- :class:`groups.permutation.Quaternion <sage.groups.perm_gps.permgroup_named.QuaternionGroup>`
18
- :class:`groups.permutation.Cyclic <sage.groups.perm_gps.permgroup_named.CyclicPermutationGroup>`
19
- :class:`groups.permutation.Dihedral <sage.groups.perm_gps.permgroup_named.DihedralGroup>`
20
- :class:`groups.permutation.DiCyclic <sage.groups.perm_gps.permgroup_named.DiCyclicGroup>`
21
- :class:`groups.permutation.Mathieu <sage.groups.perm_gps.permgroup_named.MathieuGroup>`
22
- :class:`groups.permutation.Suzuki <sage.groups.perm_gps.permgroup_named.SuzukiGroup>`
23
- :class:`groups.permutation.PGL <sage.groups.perm_gps.permgroup_named.PGL>`
24
- :class:`groups.permutation.PSL <sage.groups.perm_gps.permgroup_named.PSL>`
25
- :class:`groups.permutation.PSp <sage.groups.perm_gps.permgroup_named.PSp>`
26
- :class:`groups.permutation.PSU <sage.groups.perm_gps.permgroup_named.PSU>`
27
- :class:`groups.permutation.PGU <sage.groups.perm_gps.permgroup_named.PGU>`
28
- :class:`groups.permutation.Transitive <sage.groups.perm_gps.permgroup_named.TransitiveGroup>`
29
- :class:`groups.permutation.RubiksCube <sage.groups.perm_gps.cubegroup.CubeGroup>`
30
31
- Matrix Groups (``groups.matrix.<tab>``)
32
33
- :func:`groups.matrix.QuaternionGF3 <sage.groups.matrix_gps.finitely_generated.QuaternionMatrixGroupGF3>`
34
- :func:`groups.matrix.GL <sage.groups.matrix_gps.linear.GL>`
35
- :func:`groups.matrix.SL <sage.groups.matrix_gps.linear.SL>`
36
- :func:`groups.matrix.Sp <sage.groups.matrix_gps.symplectic.Sp>`
37
- :func:`groups.matrix.GU <sage.groups.matrix_gps.unitary.GU>`
38
- :func:`groups.matrix.SU <sage.groups.matrix_gps.unitary.SU>`
39
- :func:`groups.matrix.GO <sage.groups.matrix_gps.orthogonal.GO>`
40
- :func:`groups.matrix.SO <sage.groups.matrix_gps.orthogonal.SO>`
41
42
- Finitely Presented Groups (``groups.presentation.<tab>``)
43
44
- :func:`groups.presentation.Alternating <sage.groups.finitely_presented_named.AlternatingPresentation>`
45
- :func:`groups.presentation.Cyclic <sage.groups.finitely_presented_named.CyclicPresentation>`
46
- :func:`groups.presentation.Dihedral <sage.groups.finitely_presented_named.DihedralPresentation>`
47
- :func:`groups.presentation.DiCyclic <sage.groups.finitely_presented_named.DiCyclicPresentation>`
48
- :func:`groups.presentation.FGAbelian <sage.groups.finitely_presented_named.FinitelyGeneratedAbelianPresentation>`
49
- :func:`groups.presentation.KleinFour <sage.groups.finitely_presented_named.KleinFourPresentation>`
50
- :func:`groups.presentation.Quaternion <sage.groups.finitely_presented_named.QuaternionPresentation>`
51
- :func:`groups.presentation.Symmetric <sage.groups.finitely_presented_named.SymmetricPresentation>`
52
53
- Affine Groups (``groups.affine.<tab>``)
54
55
- :func:`groups.affine.Affine <sage.groups.affine_gps.affine_group.AffineGroup>`
56
- :func:`groups.affine.Euclidean <sage.groups.affine_gps.euclidean_group.EuclideanGroup>`
57
58
- Miscellaneous Groups (``groups.misc.<tab>``)
59
60
- :func:`groups.misc.AdditiveAbelian <sage.groups.additive_abelian.additive_abelian_group.AdditiveAbelianGroup>`
61
- :class:`groups.misc.AdditiveCyclic <sage.rings.finite_rings.integer_mod_ring.IntegerModFactory>`
62
- :func:`groups.misc.Braid <sage.groups.braid.BraidGroup>`
63
- :func:`groups.misc.CoxeterGroup <sage.combinat.root_system.coxeter_group.CoxeterGroup>`
64
- :func:`groups.misc.Free <sage.groups.free_group.FreeGroup>`
65
- :func:`groups.misc.SemimonomialTransformation <sage.groups.semimonomial_transformations.semimonomial_transformation_group.SemimonomialTransformationGroup>`
66
- :func:`groups.misc.WeylGroup <sage.combinat.root_system.weyl_group.WeylGroup>`
67
68
"""
69
70
# Implementation notes:
71
#
72
# With this groups_catalog.py module imported as
73
# "groups" in all.py then groups.<tab> is available
74
#
75
# "catalog" modules are made available
76
# as groups.matrix, etc by imports below
77
#
78
# Do not use this file for code
79
#
80
# Please keep this top-level clean, use
81
# groups.misc for one-off examples
82
#
83
# Candidates for new primary divisions:
84
# groups.sporadic - 26 sporadic groups
85
# groups.misc - one-off stuff (implemented, but empty)
86
# groups.presentation - free groups with relations
87
# groups.symmetries - permutation groups of regular solids, or similar
88
89
from sage.groups.matrix_gps import catalog as matrix
90
from sage.groups.perm_gps import permutation_groups_catalog as permutation
91
from sage.groups.misc_gps import misc_groups_catalog as misc
92
from sage.groups.affine_gps import catalog as affine
93
from sage.groups import finitely_presented_catalog as presentation
94
95