'Return the order of the group: the number of permutations that
can be generated from elements of the group.
The number of permutations comprising the group is given by
``len(group)``; the length of each permutation in the group is
given by ``group.size``.
Examples
>>> from sympy.combinatorics.permutations import Permutation
>>> from sympy.combinatorics.perm_groups import PermutationGroup
>>> a = Permutation([1, 0, 2])
>>> G = PermutationGroup([a])
>>> G.degree
3
>>> len(G)
1
>>> G.order()
2
>>> list(G.generate())
[(2), (2)(0 1)]
>>> a = Permutation([0, 2, 1])
>>> b = Permutation([1, 0, 2])
>>> G = PermutationGroup([a, b])
>>> G.order()
6
See Also
degree'

def order(self):

    if (self._order != None):
        return self._order
    if self._is_sym:
        n = self._degree
        self._order = factorial(n)
        return self._order
    if self._is_alt:
        n = self._degree
        self._order = (factorial(n) / 2)
        return self._order
    basic_transversals = self.basic_transversals
    m = 1
    for x in basic_transversals:
        m *= len(x)
    self._order = m
    return m
