#
# subgroupladders: This package provides an algorithm that computes a subgroup ladder from a permutation group up to the parent symmetric group.
#
# Declarations
#
#! @Description
#! Given a list of lists part of positive integers, this will compute
#! the Young #! subgroup corresponding to this partition.
#! @Returns a group
#! @Arguments part
DeclareGlobalFunction( "YoungGroupFromPartition" );
#! @Description
#! Given a permutation group G, this will compute a subgroup ladder
#! from G up to the parent symmetric group.
#! A subgroup ladder is series of subgroups G = H_0,…,H_k = S_n of the
#! symmetric group such that for every 1 \leq i \leq k, H_i is a
#! subgroup of H_{{i-1}} or H_{{i-1}} is a subgroup of H_i.
#! If G is a Young subgroup of S_n, we can guarantee that all
#! the indices are at most the degree n of the permutation group.
#! Otherwise, we will at first embed G into the Young subgroup
#! corresponding to the orbits of G.
#! At this step, the index may be larger than the degree.
#! @Returns a list of groups
#! @Arguments G
DeclareGlobalFunction( "SubgroupLadder");