Modules

Designs

Graphs

graphs.aram(P, r, t, e)

The augmented row-absences multigraph of a KF-SPLS.

graphs.latin_graph(size)

The cartesian product of the complete graph with ‘size’ vertices with itself.

graphs.rabg(P, r, t, e)

The row-absences bipartite-graph of a KF-SPLS.

graphs.symmetric_latin_graph(size)

The graph described on p.20 of “Completing Partial Latin Squares: Cropper’s Question”

by Bobga, Goldwasser, Hilton and Johnson.

Hall

Output

Utils

utils.cell(row, column, size)

The label of the cell in position (row, col).

utils.col(cell, size)

The column label of the column in a square of dimension ‘size’ containing the cell with label ‘cell’.

utils.col_r(cell, size)

A range of all labels of cells in the same column as ‘cell’.

utils.list_assignment(partial_latin_square, size)

The (canonical) list assignment for a partial latin square. The list of a filled cell is the list containing just the element in that cell. The list of an empty cell contains only those symbols not already used in the same row and column as that cell.

utils.rect_r(tl, br, size)

A rectangular range which extends from tl in the top-left to br in the bottom right.

utils.row(cell, size)

The row label of the row in a square of dimension ‘size’ containing the cell with label ‘cell’.

utils.row_r(cell, size)

A range of all labels of cells in the same row as ‘cell’.

utils.vertex(cell, size)

The row and column labels of ‘cell’, as a pair.