38.9 Block Systems

A block system (system of imprimitivity) for the action of G on Omega is a partition of Omega which -- as a partition -- remains invariant under the action of G.

  • Blocks( G, Omega[, seed][, gens, acts][, act] ) O
  • Blocks( xset[, seed] ) A

    computes a block system for the action. If seed is not given and the action is imprimitive, a minimal nontrivial block system will be found. If seed is given, a block system in which seed is the subset of one block is computed. The action must be transitive.

    gap> g:=TransitiveGroup(8,3);
    E(8) = 2[x]2[x]2
    gap> Blocks(g,[1..8]);      
    [ [ 1, 8 ], [ 2, 3 ], [ 4, 5 ], [ 6, 7 ] ]
    gap> Blocks(g,[1..8],[1,4]);
    [ [ 1, 4 ], [ 2, 7 ], [ 3, 6 ], [ 5, 8 ] ]
    
    (See Section Basic Actions for information about specific actions.)

  • MaximalBlocks( G, Omega[, seed][, gens, acts][, act] ) O
  • MaximalBlocks( xset[, seed] ) A

    returns a block system that is maximal with respect to inclusion. maximal with respect to inclusion) for the action of G on Omega. If seed is given, a block system in which seed is the subset of one block is computed.

    gap> MaximalBlocks(g,[1..8]);
    [[1,2,3,8],[4,5,6,7]]
    

  • RepresentativesMinimalBlocks( G, Omega[, gens, acts][, act] ) O
  • RepresentativesMinimalBlocks( xset ) A

    computes a list of block representatives for all minimal (i.e blocks are minimal with respect to inclusion) nontrivial block systems for the action.

    gap> RepresentativesMinimalBlocks(g,[1..8]);
    [ [ 1, 2 ], [ 1, 3 ], [ 1, 4 ], [ 1, 5 ], [ 1, 6 ], [ 1, 7 ], [ 1, 8 ] ]
    

  • AllBlocks( G ) A

    computes a list of representatives of all block systems for a permutation group G acting transitively on the points moved by the group.

    gap> AllBlocks(g);       
    [ [ 1, 8 ], [ 1, 2, 3, 8 ], [ 1, 4, 5, 8 ], [ 1, 6, 7, 8 ], [ 1, 3 ], 
      [ 1, 3, 5, 7 ], [ 1, 3, 4, 6 ], [ 1, 5 ], [ 1, 2, 5, 6 ], [ 1, 2 ], 
      [ 1, 2, 4, 7 ], [ 1, 4 ], [ 1, 7 ], [ 1, 6 ] ]
    

    The stabilizer of a block can be computed via the action OnSets (see OnSets):

    gap> Stabilizer(g,[1,8],OnSets);
    Group([ (1,8)(2,3)(4,5)(6,7) ])
    

    If bs is a partition of omega, given as a set of sets, the stabilizer under the action OnSetsDisjointSets (see OnSetsDisjointSets) returns the largest subgroup which preserves bs as a block system.

    gap> g:=Group((1,2,3,4,5,6,7,8),(1,2));;
    gap> bs:=[[1,2,3,4],[5,6,7,8]];;
    gap> Stabilizer(g,bs,OnSetsDisjointSets);
    Group([ (5,6)(7,8), (5,8)(6,7), (1,5)(2,6)(3,7)(4,8), (1,2)(3,4), (1,4)(2,3), 
      (6,8,7), (2,3,4), (3,4), (7,8) ])
    

    [Top] [Previous] [Up] [Next] [Index]

    GAP 4 manual
    February 2000