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

# 3 Determining basic properties of block designs

### Sections

1. The functions for basic properties

## 3.1 The functions for basic properties

- `IsBlockDesign(` obj`)`

  This boolean function returns `true` if and only if obj, which can be an object of arbitrary type, is a block design.

      gap> IsBlockDesign(5);
      false
      gap> IsBlockDesign( BlockDesign(2,[[1],[1,2],[1,2]]) );
      true

- `IsBinaryBlockDesign(` D`)`

  This boolean function returns `true` if and only if the block design D is binary, that is, if no block of D has a repeated element.

      gap> IsBinaryBlockDesign( BlockDesign(2,[[1],[1,2],[1,2]]) );
      true
      gap> IsBinaryBlockDesign( BlockDesign(2,[[1],[1,2],[1,2,2]]) );
      false

- `IsSimpleBlockDesign(` D`)`

  This boolean function returns `true` if and only if the block design D is simple, that is, if no block of D is repeated.

      gap> IsSimpleBlockDesign( BlockDesign(2,[[1],[1,2],[1,2]]) );
      false
      gap> IsSimpleBlockDesign( BlockDesign(2,[[1],[1,2],[1,2,2]]) );
      true

- `IsConnectedBlockDesign(` D`)`

  This boolean function returns `true` if and only if the block design D is connected, that is, if its incidence graph is a connected graph.

      gap> IsConnectedBlockDesign( BlockDesign(2,[[1],[2]]) );
      false
      gap> IsConnectedBlockDesign( BlockDesign(2,[[1,2]]) );
      true

- `ReplicationNumber(` D`)`

  If the block design D is equireplicate, then this function returns its replication number; otherwise `fail` is returned.

  A block design D is equireplicate with replication number r if, for every point x of D, r is equal to the sum over the blocks of the multiplicity of x in a block. For a binary block design this is the same as saying that each point x is contained in exactly r blocks.

      gap> ReplicationNumber(BlockDesign(4,[[1],[1,2],[2,3,3],[4,4]]));
      2
      gap> ReplicationNumber(BlockDesign(4,[[1],[1,2],[2,3],[4,4]]));
      fail

- `BlockSizes(` D`)`

  This function returns the set of sizes (actually list-lengths) of the blocks of the block design D.

      gap> BlockSizes( BlockDesign(3,[[1],[1,2,2],[1,2,3],[2],[3]]) );
      [ 1, 3 ]

- `BlockNumbers(` D`)`

  Let D be a block design. Then this function returns a list of the same length as `BlockSizes(`D`)`, such that the i-th element of this returned list is the number of blocks of D of size `BlockSizes(`D`)[`i`]`.

      gap> D:=BlockDesign(3,[[1],[1,2,2],[1,2,3],[2],[3]]);
      rec( isBlockDesign := true, v := 3,
        blocks := [ [ 1 ], [ 1, 2, 2 ], [ 1, 2, 3 ], [ 2 ], [ 3 ] ] )
      gap> BlockSizes(D);
      [ 1, 3 ]
      gap> BlockNumbers(D);
      [ 3, 2 ]

- `TSubsetLambdasVector(` D`,` t`)`

  Let D be a block design, t a non-negative integer, and ``v`=`D`.v`. Then this function returns an integer vector L whose positions correspond to the t-subsets of {1,...,v}. The i-th element of L is the sum over all blocks B of D of the number of times the i-th t-subset (in lexicographic order) is contained in B. (For example, if t=2 and B=[1,1,2,3,3,4], then B contains [1,2] twice, [1,3] four times, [1,4] twice, [2,3] twice, [2,4] once, and [3,4] twice.) In particular, if D is binary then L[i] is simply the number of blocks of D containing the i-th t-subset (in lexicographic order).

      gap> D:=BlockDesign(3,[[1],[1,2,2],[1,2,3],[2],[3]]);;
      gap> TSubsetLambdasVector(D,0);
      [ 5 ]
      gap> TSubsetLambdasVector(D,1);
      [ 3, 4, 2 ]
      gap> TSubsetLambdasVector(D,2);
      [ 3, 1, 1 ]
      gap> TSubsetLambdasVector(D,3);
      [ 1 ]

- `AllTDesignLambdas(` D`)`

  If the block design D is not a t-design for some tge0 then this function returns an empty list. Otherwise D is a binary block design with constant block size k, say, and this function returns a list L of length T+1, where T is the maximum tlek such that D is a t-design, and, for i=1,...,T+1, L[i] is equal to the (constant) number of blocks of D containing an (i-1)-subset of {1,...,``D`.v`}.

      gap> AllTDesignLambdas(PGPointFlatBlockDesign(3,2,1));
      [ 35, 7, 1 ]

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