'Maximum proper divisor of the degree of a permutation group.
Notes
Obviously, this is the degree divided by its minimal proper divisor
(larger than ``1``, if one exists). As it is guaranteed to be prime,
the ``sieve`` from ``sympy.ntheory`` is used.
This function is also used as an optimization tool for the functions
``minimal_block`` and ``_union_find_merge``.
Examples
>>> from sympy.combinatorics import Permutation
>>> from sympy.combinatorics.perm_groups import PermutationGroup
>>> G = PermutationGroup([Permutation([0, 2, 1, 3])])
>>> G.max_div
2
See Also
minimal_block, _union_find_merge'

@property
def max_div(self):

    if (self._max_div is not None):
        return self._max_div
    n = self.degree
    if (n == 1):
        return 1
    for x in sieve:
        if ((n % x) == 0):
            d = (n // x)
            self._max_div = d
            return d
