Incidence Structures, Graphs, and Codes

IncidenceStructure(G): Grph -> Inc

Construct the incidence structure \(D\) corresponding to the graph \(G\), where the blocks of \(D\) correspond to the edges of \(G\).

PointGraph(D): Inc -> Grph

The point graph \(G\) of the incidence structure \(D\). The graph \(G\) has the same point set as \(D\) and two vertices \(u\) and \(v\) of \(G\) are adjacent whenever there is a block of \(D\) containing both \(u\) and \(v\).

BlockGraph(D): Inc -> Grph

The block graph of the incidence structure \(D\), i.e., the point graph of the dual of \(D\).

IncidenceGraph(D): Inc -> Grph

The incidence graph of the incidence structure \(D\). This bipartite graph has as vertex set the union of the point set \(P\) and block set \(B\) of \(D\). A vertex \(p \in P\) is adjacent to a vertex \(b \in B\) whenever \(p \in b\).

LinearCode(D, K): Inc, FldFin -> Code

Given an incidence structure \(D\) with \(v\) points and a finite field \(K\), this function returns the linear code \(C\) of length \(v\) generated by the characteristic functions of the blocks of \(D\) considered as vectors of the \(K\)-space \(K^{(v)}\).

Example: Code of the Witt Design (ex-09b77a)

The linear code of the Witt 5-(24, 8, 1) design over GF(2) is the extended Golay code over GF(2).

> D := WittDesign(24);
> C := LinearCode(D, GF(2));
> C eq GolayCode(GF(2), true);
true

Run in calculator (opens in a new tab)