Elementary Invariants of a Design

The following functions can be applied only to designs.

Parameters(D) : Dsgn -> Record
The parameters t--(v, b, r, k, λ) of the design D returned as a record.
ReplicationNumber(D) : Dsgn -> RngIntElt
The number of blocks r containing any point of the t--(v, k, λ) design D, where t > 0.
BlockDegree(D) : Dsgn -> RngIntElt
BlockSize(D) : Dsgn -> RngIntElt
The number of points in a block of the design D.
Covalence(D, s) : Dsgn, RngIntElt -> RngIntElt
Given a t--(v, k, λ) design D and an integer s such that 0 ≤s ≤t, return the value of λs; i.e., the number of blocks that contain an arbitrary s-subset of the points of D.
Order(D) : Dsgn -> RngIntElt
The order of the t--(v, k, λ) design D. This is defined only for designs with t ≥2.
IntersectionNumber(D, i, j) : Dsgn, RngIntElt, RngIntElt -> RngIntElt
The block intersection number λij; i.e., the number of blocks of the design D containing an i-set and disjoint from a j-set. The arguments i and j must satisfy i + j ≤t.
PascalTriangle(D) : Dsgn -> SeqEnum
The "Pascal triangle" of the design D, returned as a sequence; the i-th element of the sequence is a sequence representing the i-th row of the triangle. That is, the i-th element of the sequence is [λ0i - 1, λ1i - 2, ..., λi - 10]. If D is a Steiner t--design, then the triangle returned has k + 1 rows (where k is the size of a block of D); otherwise the triangle has t + 1 rows.

Example Design_design-invar (H156E6)

We illustrate some of the functions of the previous two sections with an example.
> F := Design< 2, 7 | {1,2,4}, {1,3,7}, {2,3,5}, {1,5,6}, {3,4,6}, {4,5,7},
>   {2,6,7} >;
> G := IncidenceStructure< 7 | Blocks(F), {1, 3, 7}, {1, 2, 4},
>   {3, 4, 5}, {2, 3, 6}, {2, 5, 7}, {1, 5, 6}, {4, 6, 7} >;
> F;
2-(7, 3, 1) Design with 7 blocks
> G;
Incidence Structure on 7 points with 14 blocks
> Points(G);
{@ 1, 2, 3, 4, 5, 6, 7 @}
> Blocks(F);
{@
    {1, 2, 4},
    {1, 3, 7},
    {2, 3, 5},
    {1, 5, 6},
    {3, 4, 6},
    {4, 5, 7},
    {2, 6, 7}
@}
> IncidenceMatrix(F);
[1 1 0 1 0 0 0]
[1 0 1 0 0 0 1]
[0 1 1 0 1 0 0]
[1 0 0 0 1 1 0]
[0 0 1 1 0 1 0]
[0 0 0 1 1 0 1]
[0 1 0 0 0 1 1]
> P := Points(F);
> P, Universe(P);
{@ 1, 2, 3, 4, 5, 6, 7 @}
Point-set of 2-(7, 3, 1) Design with 7 blocks
> S := Support(F);
> S, Universe(S);
{@ 1, 2, 3, 4, 5, 6, 7 @}
Integer Ring
> Covalence(G, {1, 2});
2
> Order(F);
2
> PascalTriangle(F);
         7
       4   3
     2   2   1
   0   2   0   1
V2.28, 13 July 2023