# pariomino

pariomino, a MATLAB code which considers pariominoes, which are polyominoes with a checkerboard parity, and the determination of tilings of a region using a specific set of pariominoes.

### Languages:

pariomino is available in a MATLAB version and an Octave version and a Python version.

### Related Data and Programs:

boundary_word_square, a MATLAB code which describes the outline of an object on a grid of squares, using a string of symbols that represent the sequence of steps tracing out the boundary.

eternity, a MATLAB code which considers the eternity puzzle, which considers an irregular dodecagon shape that is to be tiled by 209 distinct pieces, each formed by 36 contiguous 30-60-90 triangles, known as polydrafters.

polyiamonds, a MATLAB code which works with polyiamonds, simple shapes constructed by edgewise connections of congruent equilateral triangles.

polyomino_parity, a MATLAB code which uses parity considerations to determine whether a given set of polyominoes can tile a specified region.

polyominoes, a MATLAB code which defines, solves, and plots a variety of polyomino tiling problems, which are solved by a direct algebraic approach involving the reduced row echelon form (RREF) of a specific matrix, instead of the more typical brute-force or backtracking methods.

### Reference:

1. Marcus Garvie, John Burkardt,
A new mathematical model for tiling finite regions of the plane with polyominoes,
Contributions to Discrete Mathematics,
Volume 15, Number 2, July 2020.
2. Solomon Golomb,
Polyominoes: Puzzles, Patterns, Problems, and Packings,
Princeton University Press, 1996,
ISBN: 9780691024448.

### Source code:

Some master functions for a pariomino tiling problem.

• LPmake_2by4_alt.m, performs step 1 of a polyomino tiling problem, in which a 2x4 rectangle is to be tiled with one T-shaped tetromino, one monomino, and one L-shaped triomino. In this computation, parity arguments are not used.
• LPmake_2by4_alt_case1.m, performs step 1 of a pariomino tiling problem, in which a 2x4 rectangle is to be tiled with one T-shaped tetromino, one monomino, and one L-shaped triomino. Parity arguments are used.
• LPmake_2by4_alt_case2.m, performs step 1 of a pariomino tiling problem, in which a 2x4 rectangle is to be tiled with one T-shaped tetromino, one monomino, and one L-shaped triomino. Parity arguments are used.
• plot_pariomino.m, after (step 1) a pariomino tiling problem has been set up, and then (step 2) solved by one of the optimizers CPLEX, SCIP, or GUROBI, this function (step 3) can create plots of the corresponding tilings. The functions for reading the optimizer solution are accessible in the polyominoes directory.

The general library of pariomino functions:

Last revised on 04 August 2020.