NumAbelianGroups - Maple Help

Home : Support : Online Help : Mathematics : Group Theory : NumAbelianGroups

GroupTheory

 NumGroups
 attempt to determine the number of groups of a given order
 NumAbelianGroups
 return the number of Abelian groups of a given order

 Calling Sequence NumGroups( n ) NumAbelianGroups( n )

Parameters

 n - a positive integer, a range of positive integers, or the string "unknown"

Description

 • The NumGroups( n ) command attempts to determine the number of groups of order n, and returns that number.  If it cannot determine the number of groups of order n, then the value FAIL is returned.
 • For small values of n, the number of groups of order n is stored in a table, and the number of stored values is at least as large as the number of groups in the Small Groups Database.  Therefore, this command can be used to determine the number of groups of a given order available in the database of small groups.
 • For values of n for which the number of groups of order n is not stored, it is necessary that Maple can factor n.
 • For values of n too large to be stored, a variety of formulae are used for values of n which are "arithmetically small".
 • The NumGroups command can compute the number of groups of order n, for n factorable and having one of the following forms: ${p}^{k}$, ${p}^{k}q$, for $k=1,2,3$, ${p}^{2}{q}^{2}$, and ${p}^{2}qr$, where $p$, $q$ and $r$ denote distinct primes. The number of groups of (factorable) square-free order can also be computed.
 • If n can be factored, and if the number of groups of order n is no more than three, then NumGroups( n ) will return that value.
 • In the current implementation, the smallest value of $n$ for which the number of groups of order $n$ cannot be computed is $n=2048$.
 • The special argument "unknown" (a string) may be passed to determine the values in the table of small orders for which the number of groups is not currently known.  An expression sequence of those values of n in the table of stored values for which the command NumGroups( n ) will return FAIL is returned. (The table currently stores values for orders less than $50000$.)
 • If n is a range of positive integers, then the NumGroups( n ) command returns a sequence of the values over that range.
 • The NumAbelianGroups( n ) command returns the number of Abelian groups of order $n$. This is computed by counting the number of isomorphism classes of order equal to the $p$-part of $n$, for each prime divisor $p$ of $n$, and also using the fact that the number of Abelian groups of prime power order ${p}^{k}$ is equal to the number of partitions of $k$ (independent of the prime $p$). Thus, the ability to compute NumAbelianGroups( n ) is dependent only upon the ability to factor the integer $n$ and to compute the number of partitions of the integer powers that appear in the factorization.

Examples

 > $\mathrm{with}\left(\mathrm{GroupTheory}\right):$
 > $\mathrm{infolevel}\left['\mathrm{GroupTheory:-NumGroups}'\right]≔1:$
 > $\mathrm{NumGroups}\left(128\right)$
 ui:   "Using table of values for small orders"
 ${2328}$ (1)
 > $\mathrm{NumGroups}\left(2048\right)$
 ui:   "prime power case" ui:   "Using table for the number of groups of order a small power of 2"
 ${\mathrm{FAIL}}$ (2)
 > $\mathrm{NumGroups}\left(2304\right)$
 ui:   "Using table of values for small orders"
 ${15756130}$ (3)
 > $\mathrm{NumGroups}\left(614889782588491410\right)$
 ui:   "Order is square-free"
 ${188018688}$ (4)
 > $\mathrm{NumGroups}\left(81513\right)$
 ui:   "Order is of the form p^3*q"
 ${13}$ (5)
 > $\mathrm{NumGroups}\left(53091\right)$
 ui:   "Order is of the form p^2*q*r"
 ${2}$ (6)
 > $\mathrm{NumGroups}\left({3}^{8}\right)$
 ui:   "Using table of values for small orders"
 ${1396077}$ (7)
 > $\mathrm{NumGroups}\left(15358747619\right)$
 ui:   "Using table of values for small orders" ui:   "Order is of the form p^2*q with p and q odd primes" ui:   "Using table of values for small orders"
 ${3}$ (8)
 > $\mathrm{NumGroups}\left(3307506804820056766681499608504868704139327366278298467987\right)$
 ui:   "Order is square-free"
 ${1}$ (9)
 > $\mathrm{NumGroups}\left(\mathrm{mul}\left(\mathrm{ithprime}\left(i\right),i=100..1000\right)\right)$
 ui:   "Order is square-free"
 ${2771340269884594676814901910875675152096737295781236722237205017714262355882880999306035200000000}$ (10)
 > $\mathrm{NumGroups}\left(10..20\right)$
 ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders" ui:   "Using table of values for small orders"
 ${2}{,}{1}{,}{5}{,}{1}{,}{2}{,}{1}{,}{14}{,}{1}{,}{5}{,}{1}{,}{5}$ (11)
 > $\mathrm{NumAbelianGroups}\left(1\right)$
 ${1}$ (12)
 > $\mathrm{NumAbelianGroups}\left(4\right)$
 ${2}$ (13)
 > $\mathrm{NumAbelianGroups}\left(419904\right)$
 ${242}$ (14)
 > $\mathrm{NumAbelianGroups}\left(12\right)$
 ${2}$ (15)
 > $\mathrm{NumAbelianGroups}\left({10}^{300}\right)$
 ${85619543833885478733834543854404}$ (16)

How many abelian groups have the same order as the Monster simple group?

 > $\mathrm{NumAbelianGroups}\left(\mathrm{GroupOrder}\left(\mathrm{Monster}\left(\right)\right)\right)$
 ${131046034680}$ (17)

Compatibility

 • The GroupTheory[NumGroups] command was introduced in Maple 17.